首先看一段代码:
//输出代码的结果 int[] a = {1,1,1}; int[] b = a; for(int i=0; i<b.length; i++){ b[i]++; } for(int j=0; j<a.length; j++){ System.out.println(a[j]); }
输出的结果是222.
这段代码的关键是int[] b = a;它的意思是将数组a的引用传递了给变量b,此时,数组变量a、b实际上都是指向一个数组。
通过下面的图片可以很好的理解:
总结:对于引用数据类型,变量指向的是一个引用,多个引用指向同一个对象,无论任何一个引用进行操作都会修改原本的对象。