美文网首页
Java 中字符串的不变性

Java 中字符串的不变性

作者: 冉冉升起的小太阳 | 来源:发表于2017-02-10 15:32 被阅读13次

    Java 中字符串的不变性

    String 对象创建后则不能被修改,是不可变的,所谓的修改其实是创建了新的对象,所指向的内存空间不同。如下所示:

    运行结果:

    结合上面的代码,关于字符串小伙伴们必须需要了解滴:

    1、 通过 String s1="爱慕课"; 声明了一个字符串对象, s1 存放了到字符串对象的引用,在内存中的存放引用关系如下图所示:

    然后通过 s1="欢迎来到:"+s1; 改变了字符串 s1 ,其实质是创建了新的字符串对象,变量 s1 指向了新创建的字符串对象,如下图所示:

    2、 一旦一个字符串在内存中创建,则这个字符串将不可改变。如果需要一个可以改变的字符串,我们可以使用StringBuffer或者StringBuilder(后面章节中会讲到)。

    3、 每次 new 一个字符串就是产生一个新的对象,即便两个字符串的内容相同,使用 ”==” 比较时也为 ”false” ,如果只需比较内容是否相同,应使用 ”equals()” 方法(前面条件运算符章节讲过哦~~)

    相关文章

      网友评论

          本文标题:Java 中字符串的不变性

          本文链接:https://www.haomeiwen.com/subject/biwgittx.html