2012-09-02 300 views
1

编辑:这是固定的,谢谢你的帮助!如何将数组中的字符串与字符串进行比较?

所以基本上我有一个字符串数组,问题和答案

public static String[][] triviaData = { 
    {"Question2", "Answer1"}, 
    {"Question2", "Answer2"}, 
    {"Question3", "Answer3"}, 
}; 

,我试图做一个验证输入的输入方法,让我们称之为输入的输入enteredAnswerenteredAnswer存储为String

我想验证enteredAnswer是否与数组的第二个索引相同。

if (enteredAnswer.equalsIgnoreCase(triviaData[Config.CurrentQuestion][1])) { 

这是我试过的代码,但我得到的错误“不能在数组类型调用equalsIgnoreCase(String)String[]

我是初学者程序员,所以如果你能帮助我走出这将是高度赞赏。谢谢。

enteredAnswer被存储为

public String[] enteredAnswer; 
+1

请显示enteredAnswer变量的声明。 – dasblinkenlight

+0

很高兴我们能帮忙;一定要接受最能帮助你的答案。它让社区*清楚*知道你有你的答案。 – Makoto

回答

1

enteredAnswer是它出现的阵列。您需要String才能拨打equalsIgnoreCase,您能否显示更多的代码?

此外,它可能会更好地使用像HashMap存储问题+答案。你可以这样做,像这样:

HashMap<String, String> questionAnswers = new HashMap<String, String>(); 

后来

questionAnswers.put("Blah blah?", "blah."); 

并检查答案给定的字符串问题String question与答案String answer只是做:

String realAnswer = questionAnswers.get(question); 
boolean correct = realAnswer.equalsIgnoreCase(answer); 
+0

它不是一个数组,它存储为public String [] enteredAnswer,它所指的数组是triviaData 也谢谢,我将研究hashmap,但现在它只使用几个问题。 – user1641312

+3

String []是一个数组.. – tigrang

1

原因您的代码调用不起作用,因为enteredAnswerString[],而不是String。指定要使用哪个元素来获得所需的String

+0

与我的答案相同..? –

相关问题