我有这样的代码:扫描仪输入+ do-while循环行为非常奇怪
Scanner inputScanner = new Scanner(System.in);
String word;
do
{
word = inputScanner.next();
System.out.println(word + ": " + dict.contains(word));
}
while (word != "@");
这是相当直接的,但环没有从用户接收@
输入后终止。我见过其他人抱怨Scanner
是容易出错,可以给意想不到的效果,但是这并不能解释为什么dict.contains(word)
功能完美而while (word != "@")
条件是不是做的事...
是怎么回事?
哇,我觉得哑巴。我只是假定String对象像'String.equals()'一样处理'=='运算符。非常感谢! –