Java中如何判断两个String是否相等

Python018

Java中如何判断两个String是否相等,第1张

1. 在java中,不能用“==”和“!=”来判断两个字符串是否相等。因为String是引用类型,而不是基本数据类型。故它们的比较是使用地址和值来比较,因为它们是不同的对象,有不同的地址。故str1==str2永远是false,而str1!=str2永远都是true。2. Java中必须使用string1.equals(string2)来进行判断 string s1="Hello"string s2="Hello"则(s1==s2)=true因为他们指向的同一个对象。String s1=new String("Hello")String s2=new String("Hello")则(s1==s2)=false如果把其他变量的值赋给s1和s2,即使内容相同,由于不是指向同一个对象,也会返回false。所以建议使用equals(),因为equals比较的才是真正的内容 3.案例 String string1=new String( "aaa" )String string2=new String( "aaa" )这两个字符串当然应该是相等的。 如果用表达式string1==string2,则该表达式的值为false 如果用表达式string1.equals(string2),则该表达式的值为true

代码如下:

String str1 = "abc"

String str2 = "bdd"

// 比较字符是否相等

boolean result = str1.equals(str2)

System.out.println(result)