java奇怪的排序行为 3 月,3 周 Questions & Answers 84 int[] a = new int[] {7,2,1,10,8,9}; int[] b = a; Arrays.sort(b); 为什么在对b执行排序操作后,两个数组都会被排序。不应该只有b被排序吗
# 1 楼答案
b
和a
都指向同一个数组对象。所以它们都是相同的数组# 2 楼答案
{cd1}和
您不是在复制数组,而是在复制对同一数组的引用
# 3 楼答案
因为将a分配给b只会将引用分配给数组。内存中只有一个数组,所以无论从何处访问它,更改它都会改变它
# 4 楼答案
因为它只是一个数组。“a”和“b”只是对同一数组的引用
如果使用clone方法复制值,那么a和b将是不同的数组,只有b将被排序