Java判断两个字符串是否相等

1、java中字符串的比较是==比较引用,equals 比较值

so我们经常习惯性的写上if(str1==str2),这种写法在java中可能会带来问题

 例1: String a="abc"; String b="abc",

那么a==b将返回true。因为在java中字符串的值是不可改变的,相同的字符串在内存中只会存一份,所以a和b指向的是同一个对象;

例2:String a=new String("abc");  String b=new String("abc");

那么a==b将返回false,此时a和b指向不同的对象。

 2、用equals方法比较的是字符串的内容是否相同,

example:String a=new String("abc"); 

 String b=new String("abc"); a.equals(b);将返回true。

通常情况下,为了避免出现上述问题,判断字符串是否相等使用equals方法

if(str1.equals(str2) )
    System.out.println("字符串相等");
else
    System.out.println("字符串不相等");

 

全部评论

相关推荐

01-16 18:34
四川大学 Java
欢迎加入AI:没有啥稳定不稳定,一切都源于业务快速发展还是收缩。我当年一开始去的央企,业务不赚钱,也贼卷,慢慢就开始优化了。。。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务