重温java知识(十五、String类之二:字符串常量池)

在Java中字符串常量池一共分为两种:

  • 静态常量池:是指(*.class)在加载的时候会自动将此程序中保存的字符串、普通的常量、类和方法等信息,全部进行分配。
  • 运行时常量池:当一个程序(*.class)加载之后,有一些字符串内容是通过String对象的形式保存后在实现字符串连接处理,由于String对象的内容可以改变,所以此时称为运行时常量池。

例子:

package com.mydemo;

public class StringDemo {
    public static void main(String args[]){

        // 开辟新对象并入池
        String strA = "字符串常量池";

        // 使用“+”进行字符串连接,由于所有的内容都是常量,本质上表示一个字符串
//        String strB = "字符" + "串" + "常量池";   // 直接赋值               // 判断结果:true

        String temp = "串";
        String strB = "字符" + temp + "常量池";   // 动态拼凑,temp为变量     // 判断结果:false

        System.out.println(strA == strB);
    }
}

发布了149 篇原创文章 · 获赞 4 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/yuzhiboyouzhu/article/details/105620624