<pre name="code" class="java">package com.ckw.mianshi; /** * 测试String类的intern方法 * @author Administrator *intern():返回一个字符串,内容与此字符串相同,但它保证来自字符串池中。 */ public class StringOfIntern { public static void main(String[] args) { /** * 例1 */ String s0="my"; String s1=new String("my"); String s2=new String("my"); System.out.println(s0==s1); s1.intern(); s2=s2.intern(); System.out.println(s0==s1); //虽然执行了s1.intern(),但它的返回值没有赋给s1 System.out.println(s0==s1.intern()); System.out.println(s0==s2); System.out.println(""); /** * 例2 */ String s3=new String("you"); System.out.println(s3==s3.intern());//其中s3.intern()来自刚刚创建的常量池中的you,s3来自于堆中的you,两者不一样 String s4=s3.intern(); System.out.println(s3+" "+s4); System.out.println(s4==s3.intern()); } }
测试结果:
false false true true false you you true
版权声明:本文为博主原创文章,未经博主允许不得转载。
原文地址:http://blog.csdn.net/u012571415/article/details/46955565