(pass[i]!= null) && (pass[i].getName()!= "nullnull")
<--当我调试它时返回 true,即使 pass[i].getName() == "nullnull"
的值当我在调试时使用 Eclipse 中的“表达式”窗口检查它时
我使用输入对话框输入两个名字
String firstName = (String)JOptionPane.showInputDialog("Enter First Name");
String lastName = (String)JOptionPane.showInputDialog("Enter Last Name");
返回
public String getName()
{
return FirstName + LastName;
}
最佳答案
您有两个具有相同值的不同字符串,但您通过引用对它们进行比较。
您需要通过编写 "nullnull".equals(pass[i].getName())
来按值比较它们。
即使 getName()
返回 null
,相反的顺序也会起作用。
关于java - 为什么这个表达式返回 true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6320139/