JAVA判断字符串是否相等不能用==

为什么说判断相等不能用==呢?

因为JAVA中String并非基本数据类型而是一个类, 变量名实际代表地址,而不是像C++一样理解为字符数组

这个运算符只能够确定两个字符串是否放在同一个位置

这意味着,放在同一位置必然相等, 相等的字符串并不一定在同一位置!

也就是说用==判断两个内容相同的字符串可能返回false

那怎样判断字符串是否相等呢?

String有内置判断方法 equals()

JAVA中可以用String的equals()方法检测两个字符串是否相等,如下例

String a="123",b="123";
boolean c=a.equals(b);

若内容一样返回值就会是true否则是false

不止字符串变量, 字符串字面量也可以调用这个方法,如下:

扫描二维码关注公众号,回复: 3461630 查看本文章
String a="123";
boolean c="123".equals(a);

还有一个不区分大小写的判断相等方法:equalsIgnoreCase(str)

String a="abc";
boolean c="Abc".equalsIgnoreCase(a);

返回true

猜你喜欢

转载自blog.csdn.net/q5706503/article/details/82954200