问答详情
源自:2-2 Java 中字符串的不变性

这个编译器怎么没法用

如题,清除了缓存也不行~~~~

提问者:金毛西卡 2016-01-06 14:26

个回答

  • 努力提升
    2016-01-06 14:54:43

    你可以试一试用别的浏览器,我用的火狐的浏览器没有问题,运行以下代码可以正确显示

    public class HelloWorld {
        public static void main(String[] args) {
            String s1 = "imooc";
            String s2 = "imooc";
            
            //定义字符串s3,保存“I love”和s1拼接后的内容
             String s3="I love"+s1;
            
            // 比较字符串s1和s2
            // imooc为常量字符串,多次出现时会被编译器优化,只创建一个对象
            System.out.println("s1和s2内存地址相同吗?" + (s1 == s2));
            
            //比较字符串s1和s3
            System.out.println("s1和s3内存地址相同吗?" + (s1==s3)                );

            String s4 = "I love " + s1;
             //比较字符串s4和s3
            // s1是变量,s4在运行时才知道具体值,所以s3和s4是不同的对象
            System.out.println("s3和s4内存地址相同吗?" + (s4 == s3));
        }
    }

  • c819096074
    2016-01-06 14:53:57

    哪里没法用了?