Java常量池之String.intern()

来源:互联网 发布:杜兰特总决赛数据效率 编辑:程序博客网 时间:2024/05/22 08:40

 java的内存区主要有,heap堆区,方法区(permGen space),我们说的常量池就在permGen区,而String的intern表示从常量池中取对应常量字符串, 如果常量池中存在,则直接取对应的字符串,如果不存在,则将自己身的字符串写入常量池.

     示例:

    1.    String cc = "abc";  --该语句,在类加载时,已将abc加载至常量池

           String dd = new String("abc").intern();

          cc == dd的结果为true

       

      2. String cc = "abc";

           Strring dd = new String("abc");

           cc == dd 结果为false;

    

    3.  String dd = new String("abc").intern();

         String ff = new String("abc").intern();

         dd == ff 结果为true;

     4. String dd = new String("abc");

         String ff = new String("abc");

         dd == ff 结果为false; 

原创粉丝点击