当前位置 > 主页 > 万和大讲堂 >


南京Java培训分享:三张图彻底了解Java中字符串的不变性

2016-06-06 10:35

  本节,南京万和Java培训将通过一系列的图片来解释Java中字符串的不变性。


  1、声明一个字符串


  定义一个字符串


  String s = "abcd";


  s中保存了string对象的引用。


  下面的箭头可以理解为“存储他的引用”。


  


  2、将一个字符串变量赋值给另外一个字符串变量


  使用变量来赋值变量


  String s2 = s;


  s2保存了相同的引用值,因为他们代表同一个对象。有疑惑?请咨询南京万和Java培训


  


  3、合并字符串


  s = s.concat("ef");


  s中保存的是一个重新创建出来的string对象的引用。


  


  总结


  一旦一个string对象在内存(堆)中被创建出来,他就无法被修改。这里南京万和Java培训提醒大家需要特别注意的是,String类的所有方法都没有改变字符串本身的值,都是返回了一个新的对象。


  如果你需要一个可修改的字符串,应该使用StringBuffer 或者 StringBuilder。否则会有大量时间浪费在垃圾回收上,因为每次试图修改都有新的string对象被创建出来。

最近开班 more>
  • Python基础班
  • Java全栈开发
  • 前端基础班
  • 软件测试
  • 云原生精英班
  • 云网预科班
  • CISP
  • HCIE-Datacom(HCIA,HCIP基础)
  • HCIP-Datacom(HCIA基础)
  • HCIA-Datacom(0基础)
  • HCIE-Datacom(HCIA,HCIP基础)
  • HCIP-Datacom(HCIA基础)
  • HCIA-Datacom(0基础)
  • OCM 12C
  • OCP 19C
  • RHCE 9.0
  • 随时开课
  • 12月26日
  • 随时开课
  • 12月4日
  • 12月16日
  • 12月9日
  • 12月21日
  • 1月6日
  • 12月30日
  • 12月16日
  • 12月21日
  • 12月7日
  • 12月7日
  • ——
  • 随时开课
  • 12月16日
    • 姓 名 :
    • 电 话 :
    • 课 程 :

技术交流群

  • Java大数据交流群560819979加入
  • Python技术交流群595083299加入
  • Oracle技术交流群595119011加入
  • Web前端技术交流群604697610加入
  • Huawei技术交流群482919361加入
  • Redhat技术交流群587875348加入
  • UI设计技术交流群511649801加入
  • Cisco技术交流群596886705加入
  • IT运维技术交流群605888381加入