Sit*_*nsu 2 java string equals
我对以下代码感到困惑.为什么它与两者==和equals方法相比?
(validFolderRow.getBondTAFolderType() == null || validFolderRow.getBondTAFolderType().equals("null"))
Run Code Online (Sandbox Code Playgroud)
谁能告诉我有什么区别
validFolderRow.getBondTAFolderType() == null
Run Code Online (Sandbox Code Playgroud)
和
validFolderRow.getBondTAFolderType().equals("null")
Run Code Online (Sandbox Code Playgroud)
?
validFolderRow.getBondTAFolderType() == null比较null(即检查是否validFolderRow.getBondTAFolderType()为空).validFolderRow.getBondTAFolderType().equals("null")比较validFolderRow.getBondTAFolderType()值为的String "null".
请注意,必须首先进行第一次比较,因为如果validFolderRow.getBondTAFolderType()为null,则无法调用equals它(因为它将抛出一个NullPointerException).由于||是短路运算符,因此将第一个操作数计算为true将阻止对第二个操作数进行求值.