读书人

关于引用地址和物理地址的一个困惑,该

发布时间: 2012-01-31 21:28:41 作者: rapoo

关于引用地址和物理地址的一个困惑

Java code
@Test    public void testObject() {        ArrayList list = new ArrayList();        System.out.println("a : " + list.hashCode());        changeObject(list);        System.out.println("d : " + list.hashCode());    }        public void changeObject(ArrayList list) {        System.out.println("b : " + list.hashCode());        list.add("1");        System.out.println("c : " + list.hashCode());    }


结果是:
a : 1
b : 1
c : 80
d : 80

无法理解输出,求大侠指点!

[解决办法]
hashcode一般用在hash表中
建议lz看看这个blog,我觉得写的不错。http://www.blogjava.net/ycfdonews/articles/168476.html
[解决办法]
hashcode 是物理地址的引用,当你add()的时候,物理存储空间就大了,所以地址也变化了

读书人网 >J2SE开发

热点推荐