首页 > 编程语言 >java的String创建细节

java的String创建细节

时间:2022-12-27 10:36:01浏览次数:62  
标签:java String s2 s1 zwz value 细节 常量

本文主要讲述String创建的内存分布

示例代码如下:

 1 public class StringExercise {
 2     public static void main(String[] args) {
 3         // 创建方式不止这两种
 4         String s1 = "zwz";
 5         /**
 6          * String类的成员:private final char value[];
 7          * public String(String original) {
 8          *      this.value = original.value;
 9          *      this.hash = original.hash;
10          * }
11          */
12         String s2 = new String ("zwz");
13         System.out.println(s1 == s2); // false
14     }
15 }

内存分布图,如下图所示:

vip

注意:String类的成员:private final char value[],即字符串常量永远存储在常量池中,value是指向字符串常量的地址。

String s1 = "zwz";

zwz字符串存放方法区的常量池中,将其地址直接返回给s1

String s2 = new String ("zwz");

在堆中开辟存储空间,创建String类的对象,value初始化为null,zwz字符串存放方法区的常量池中,并将其地址返回给value,再将String类对象的地址返回给s2。

 

标签:java,String,s2,s1,zwz,value,细节,常量
From: https://www.cnblogs.com/zwgitOne123/p/17007495.html

相关文章

  • Android游戏开发cocos2d-x调用Java层代码
    通过JNI调用准备工作:首先用VS工程导入$cocos2d_Root\cocos2dx\platform\android\jni\JniHelper.h接着导入$Java\jdk1.6.0_10\include\jni.h再导入$Java\jdk1.6.0_10\include......
  • 第十四届模拟赛第二期试题【Java解析】
    目录​​✏️写在前面​​​​✨历史回顾​​​​......
  • JAVA学习网站
    英文网站http://www.javaalmanac.com-Java开发者年鉴一书的在线版本.要想快速查到某种Java技巧的用法及示例代码,这是一个不错的去处.http://......
  • JAVA中如何实现代码优化(技巧讲解)
    1.用String.format拼接字符串不知道你有没有拼接过字符串,特别是那种有多个参数,字符串比较长的情况。比如现在有个需求:要用get请求调用第三方接口,url后需要拼接多个参数。以......
  • Java——方法
    Java——方法什么是方法?System.out.println(),那么它是什么呢?1.System是一个类,out是一个staticPrintStream对象。由于它是"静态"的,所以不需要我们创建任何东西,所以只需......
  • 利用java实现QQ空间相册特效,一段代码就能搞定了哦!
    利用java实现QQ空间相册特效,一段代码就能搞定了哦!Hi,大家好,我是小雨!微信和QQ是目前主流的两款社交工具。有人说微信已经完全替代了QQ,已经没有人玩QQ了。但是小雨却不这么认......
  • 2022-12-26 上证指数不测而测推演 那五种情况 再细节
    确定不测而测的步骤1.确定我们的操作级别,5分钟笔。如果有5分钟笔级别多头萌发,就进入。如果有5分钟笔级别的空头萌发,就退出。2.通过走势多异性,确定这个级别,处的阶段。3......
  • java——IO流
    文件的基本操作什么是文件?文件就是保存数据的地方,比如大家经常使用的word文档,txt文档,Excel文件。。。。 在我们java编程中会经常提到流的概念,这里的流指的就是文件流......
  • rk字符串匹配算法java实现
      /***rk字符串匹配算法,主要引入了hash的概念,*利用子串的hash值依次对比主串相应长度的子串hash值*并对hash值相同的子串进行匹配对比*/publicclassRKS......
  • Java基础类String学习分析
    目录1String不可变性2不可变的好处3String+和StringBuilder效率差异4String,StringBufferandStringBuilder5String与JVM内存管理6Stringapi方法1String不可变......