码迷,mamicode.com
首页 > 其他好文 > 详细

String 类型

时间:2018-10-27 19:46:56      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:字符串常量   空间   分享图片   堆内存   声明   pre   不同的   改变   image   

一、不可变

  一个 String 类型的值是不可以改变的,比如,String china = "中国",“中国”这个字符串从它创建开始直到销毁都是不可改变的。

二、字符串常量池

  字面量声明的字符串内存都分配在字符串常量池。

  String a = "中";
  String b = "中";
  a == b 和 a.equals(b) 都为 true
   String a = "中国";
   String b = "中" + "国";
   a == b 和 a.equals(b) 都为 true。        
   String a = "中国";
   String b = "中";
   String c = "国";
   String d = b + c;
   System.out.println(a == d); // false
   System.out.println(a.equals(d));

 三、new 的字符串都是一个新的字符串

    String a = new String("中");
    String b = new String("中");
    System.out.println(a == b); // false
    System.out.println(a.equals(b)); // true

 技术分享图片

引用 a 和引用 b 指向不同的堆内存空间,这两块不同的堆内存空间又指向同一块字符串常量空间。

 

String 类型

标签:字符串常量   空间   分享图片   堆内存   声明   pre   不同的   改变   image   

原文地址:https://www.cnblogs.com/Mike_Chang/p/9862653.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!