首页 > 技术交流 > Java中String字符串的一些疑惑,求大佬解答

Java中String字符串的一些疑惑,求大佬解答

头像
GangDong
发布于 2021-04-30 09:06:59 APP内打开
赞 0 | 收藏 6 | 回复3 | 浏览2197
package com.gang.jav2;
 
public class StringDemo {
    public static void main(String[] args) {
        String str1=new StringBuilder("javv").append("aa").toString();
        System.out.println(str1);
        System.out.println(str1.intern());
        System.out.println(str1==str1.intern());
        System.out.println("====================");
        String str2=new StringBuilder("javv").append("aav").toString();
        String str3="javvaav";
        System.out.println(str2);
        System.out.println(str3);
        System.out.println(str2==str2.intern());
        System.out.println(str3==str2.intern());
        System.out.println("====================");
        String str4=new String("aabb");
        String str5="aabb";
        System.out.println(str5==str4.intern());
    }
}
 
=============================
output:
 
javvaa
javvaa
true
====================
javvaav
javvaav
false
true
====================
true

话不多说,先上代码;

str1==str1.intern() 这个相信熟悉字符串的同学应该能明白。

下面的str2==str2.intern() 结果是false,我就不能理解了.. 

这是为什么呢?

3条回帖

回帖
加载中...
话题 回帖

相关热帖

技术交流近期热帖

近期精华帖

热门推荐