java数组中元素为String和Integer时的==判断问题

来源:互联网 发布:如何成为大数据分析师 编辑:程序博客网 时间:2024/06/14 17:45

String共享池和Integer享元模式不再说了,参看:Integer应用了享元模式 JAVA --String类笔试面试题

这里看一下在数组中作为元素时,String和Integer是否还有这样的特点?

public static void main(String[] args) {String[] a = new String[10];a[0] = "a";a[1] = "a";System.out.println(a[0] == a[1]);//truea[2] = new String("a");a[3] = new String("a");System.out.println(a[2]==a[3]);//falseSystem.out.println(a[2]==a[1]);//falseSystem.out.println(a[2].intern()==a[1]);//trueInteger[] i = new Integer[10];i[0] = 97;i[1] = 97;System.out.println(i[0]==i[1]);//truei[2] = 128;i[3] = 128;System.out.println(i[2]==i[3]);//falseSystem.out.println(i[4]);//null}
由结果可以看出,数组容器中的String还是有常量池特点,Integer也还是有享元模式的特点的。


阅读全文
0 0
原创粉丝点击