Java引用传递的一个例子
2016-11-14 17:13
302 查看
class Candy{ private Integer i; public void setI(Integer i) { this.i = i; } public Integer getI() { return i; } public static void main(String[] args) { Map<String,Object> map=new HashMap<String,Object>(); Candy[] array=new Candy[1]; Candy cd=new Candy(); cd.setI(0); map.put("i", cd); array[0]=cd; array[0].setI(5); System.out.println("map:"+((Candy)map.get("i")).getI()); System.out.println("array:"+array[0].getI()); } } //output //map:5 //array:5
在整个main方法中,只有一部new操作,即只有一个Candy对象(假定为A对象),array[0]=cd和map.put(“i”,cd)两个操作只是获取到指向A的引用cd的值,因此array[0]和map中key=”i”元素都只是指向A的引用,对array[0]和map中key=”i”元素进行操作,实质上就是对A操作,因此,array[0]和map.get(“i”)的结果始终是一致的。这便是一个简单的引用传递的小栗子。
相关文章推荐
- JAVA中将一个数组通过引用传递给一个函数,在函数内部改变了它,再回到主函数,这个数组却没变化?
- 一个例子说明java数据类型包括对象是赋值还是引用!!!
- java面试题解惑:当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
- Java - 当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
- java面试题:当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
- 一个实例介绍——java中的参数传递(传值、传引用)
- java 考察引用的一个例子
- 记录一个Java值传递和对象传递之间的例子展示
- 一个简单的例子让你理解值传递和引用传递
- Java8--传递代码:一个例子
- JAVA一个关于传递引用的测试
- java基本数据类型传递与引用传递区别详解(一个大神的解析,不是我。。)
- java 传递参数 “引用是一种数据类型”,“参数是引用的一个拷贝”
- luajava数值和对象传递的一个例子
- 值传递与引用传递的一个例子
- Java 把对象作为参数传到一个方法里,这个是值传递还是引用传递, 为什么结果这么怪?
- 一个简单的例子,证明JAVA参数是通过值传递
- 一个成功传递引用类型参数到非托管环境的例子
- JAVA 是参数传递 不是引用传递 例子
- CORBA Programming with TAO - 7.IIOP(体验IIOP--一个Java作客户端的例子)