我想制作一个Mad Libs程序,在其中编写一个mad libs模板,然后计算机为您填充空白。到目前为止,我已经做到了:
package madlibs;
import java.io.*;
import java.util.Scanner;
/**
*
* @author Tim
*/
public class Madlibs {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws IOException {
File nouns = new File("nounList.txt");
Scanner scan = new Scanner(nouns);
while(scan.hasNextLine()){
if("__(N)".equals(scan.nextLine().trim())){
int word = (int) (Math.random() * 100);
}
}
}
}
nounList.txt
文件包含名词列表,每个名词在单独的行上。问题是:如何使用Math.random函数然后选择使用哪一行? 最佳答案
获取列表中的所有名词,然后从列表中选择一个随机元素。
例:
// Nouns would contain the list of nouns from the txt file
List<String> nouns = new ArrayList<>();
Random r = new Random();
String randomNoun = nouns.get(r.nextInt(0, nouns.length));