Java Word猜猜游戏检查有效单词

时间:2016-03-25 04:55:31

标签: java string file-io

我正在写一个单词猜谜游戏,计算机从txt文件中随机选择一个5个字母的单词。每一轮玩家猜测一个5个字母的单词,如果猜测不正确,计算机会说出猜测与#34;秘密有多少相同的字母"字。

如何检查单词是否在'字典中? (一个允许的单词的txt文件)?

 // is word in the dictionary?
 public boolean isValidWord(String word) { 
     //see if string inputted is in the dictionary 

}

2 个答案:

答案 0 :(得分:1)

有多种方法可以做到这一点: 一个是您可以在字典中读取一次,将其保存在内存中,如下所示,然后执行查找以查看该单词是否存在

 Scanner scanner=new Scanner("FileNameWithPath");
 List<String> list=new ArrayList<>();
 while(scanner.hasNextLine()){
     list.add(scanner.nextLine()); 
 }

或类似于BufferedReader

BufferedReader in = new BufferedReader(new FileReader("path/of/text"));
String str;

List<String> list = new ArrayList<String>();
while((str = in.readLine()) != null){
    list.add(str);
}

现在您的方法是对列表中的String进行简单检查。

答案 1 :(得分:1)

使用java8的新功能!

// read all lines
return !Files.lines(Paths.get(fileName))

    // search matches
    .filter(w -> w.equals(word))

    // any hit?
    .findAny()
    .isEmpty();