String str1 = "123";
String str2 = "123";
// 直接这样判断可能会带来问题(因为在java中字符串的值是不可改变的,相同的字符串在内存中只会存
// 一份,所以a和b指向的是同一个对象;当两个字符串是这样初始化的时候String str1=new String("123"); String str=new String("123"),这样比会返回false;): if (str1 == str2){}
// 1. 可以使用hashCode()函数去判断: if (str1.hashCode() == str2.hashCode()){},如果相等则返回true。否则返回false
// 2. 可以使用 a.equals(b)函数去判断: if (str1.equals() == str2.equals()){},如果相等则返回true。否则返回false
java 两个字符串(str)比较是否相等
本文探讨了Java中字符串比较的方法,包括使用hashCode()和equals()函数的区别。解释了为什么直接使用==进行比较可能得到错误结果,并提供了正确的比较方式。
1033

被折叠的 条评论
为什么被折叠?



