用户输入字符串时出现问题(Java)

用户输入字符串时出现问题(Java),java,Java,我有一系列的问题和相应的答案。我让用户回答问题,然后使用if语句将答案与真实答案进行比较。即使答案是正确的,它仍然显示输出为不正确。请帮忙 扫描仪输入=新扫描仪(System.in) int输入按钮; int输入WO; 串回答1,回答2,回答3,回答4,回答5,回答6,回答7,回答8,回答9,回答10,回答11,回答12; String[]疑问={“有多少大陆?”,“加拿大的首都是什么?”,“世界上最大的国家是什么?”,“世界上最大的海洋是什么?”,“世界上有多少海洋?”,“非洲有多少国家?”,

我有一系列的问题和相应的答案。我让用户回答问题,然后使用if语句将答案与真实答案进行比较。即使答案是正确的,它仍然显示输出为不正确。请帮忙

扫描仪输入=新扫描仪(System.in)

int输入按钮;
int输入WO;
串回答1,回答2,回答3,回答4,回答5,回答6,回答7,回答8,回答9,回答10,回答11,回答12;
String[]疑问={“有多少大陆?”,“加拿大的首都是什么?”,“世界上最大的国家是什么?”,“世界上最大的海洋是什么?”,“世界上有多少海洋?”,“非洲有多少国家?”,“世界上有多少国家以联合这个词开头?”,“米兰在哪里?”,“美国人口最少的州是什么?”,“澳大利亚的首都是什么?”,“有多少国家以字母J开头?”,“世界上哪个国家的湖泊最多?”};                                                                                                                                                                                                                                                                                          //
字符串[]答案={“7”、“渥太华”、“俄罗斯”、“太平洋”、“5”、“54”、“3”、“意大利”、“怀俄明州”、“堪培拉”、“3”、“芬兰”};
System.out.println(“输入行和列:”);
inputOne=input.nextInt();
inputWO=input.nextInt();
如果(输入按钮<0 | |输入WO<0 | |输入按钮>2 | |输入WO>3){
System.err.println(“输入无效。为行输入一个介于0-2之间的数字,为列输入一个介于0-3之间的数字。”);
}   
if(inputOne==0&&inputwo==0){
System.out.println(“您选择了500”);
System.out.println(问题[11]);
answer1=input.next();
如果(回答1==回答[11]){
System.out.println(“正确!”);
}
否则{
System.err.println(“错误”);
}
}

如果要使用的字符串相等

str1.equals(str2);
使用==检查两个变量是否指向相同的内存位置。此外,最好使用字典来处理问答类问题,其中问题是关键,答案是值。

使用answer1.equals(答案[11]),而不是(answer1==答案[11])
str1.equals(str2);