我知道为了查看两个字符串的内容是否匹配在Java中,我们可以使用.equals()
方法,但是我们可以使用什么来查看它们是否不匹配?我见过的例子,可以说我有一个名为字符串:password
被设置为Cooper
Java中的字符串:.equals()
(!password.equals("Cooper"));
是否感叹号的意思是,如果密码不等于Cooper
,它是检查?
谢谢
我知道为了查看两个字符串的内容是否匹配在Java中,我们可以使用.equals()
方法,但是我们可以使用什么来查看它们是否不匹配?我见过的例子,可以说我有一个名为字符串:password
被设置为Cooper
Java中的字符串:.equals()
(!password.equals("Cooper"));
是否感叹号的意思是,如果密码不等于Cooper
,它是检查?
谢谢
是的,这是正确的。 !
标记将翻转boolean
的值。
您可以有两个选择,检查密码是否不等于Cooper
if(!password.equals("Copper"))
{
//do something
}
或
if(!"Copper".equals(password))
{
//do something
}
(!password.equals("Cooper"))
是正确的。 !符号将切换布尔结果的值。
而不是你的说法,我宁愿(!"Cooper".equals(password))
,因为在左侧的常数值也将消除空指针异常的机会。
如果password的值为null,那么您的语句将抛出NullPointerException。
在您的示例'''的意思是“不是”的上下文中,它翻转了boolean值的结果,所以如果'equals'返回'true',那么'''会使它成为'false',你也在正常比较中看,如果a不等于'b',a!= b'将返回'true'(出于参数的缘故,假设有数字) – MadProgrammer
这不是*感叹号*。这是*不是运营商*。 –
@KenWhite Unicode联盟会不同意你。 (http://www.fileformat.info/info/unicode/char/0021/index.htm) –