目前我正在编写一个程序,用于学习目的,它或多或少是一个用户定义的字典。给你一个单词,然后你用英语输入相应的单词,然后它应该告诉你它是真的还是假的,这取决于之前作为答案输入的内容。
现在,我遇到的麻烦是我目前无法弄清楚如何检查用户输入是否正确,因为我不知道如何比较数组列表中的 2 个值。
目前我有这个:
public void add(String question, String answer) throws FileNotFoundException, IOException
{
wordlist.add(new WordPair(question, answer));
}
向数组添加新元素,只有 2 个字符串,然后我被困在这个:
public boolean checkGuess(String question, String quess)
{
}
这就是我想比较 2 个字符串的地方。任何帮助都非常感谢。
重写 Word 类中的 equals
方法,只需执行以下操作:
public boolean checkGuess(String question, String quess)
{
return wordlist.contains(new WordPair(question, quess));
}
我假设每个问题都是独一无二的。请注意,Map
将是更好的实现。
要比较两个字符串,您可以使用 equals() 方法:
String a = "a";
String b = "a";
if(a.equals(b)){
//TRUE
}
要循环浏览数组列表,您可以为每个循环使用
for(WordPair pair : wordlist){
if(guess.equals(pair.getAnswer())){
// Equals the word
}
}
或者,如果单词的大写不重要,可以使用equalsIgnoreCase()
。
String a = "A";
String b = "a";
if(a.equalsIgnoreCase(b)){
// TRUE
}