关于JAVA复制的问题

package test02;

public class ArraysOfPrimitives {
    
    public static void main(String[] args) {
        int [] a1 = {1, 2, 3, 4, 5};
        int [] a2;
        
        a2 = a1;   //引用
        
        for (int i = 0; i < a2.length; i++) {
            a2[i] = a2[i] + 10;                  //改变a2的值
        }
        
        for (int i = 0; i < a1.length; i++) {
            System.out.println("a[" + i + "] = " + a1[i]);    
        }
    }
}

今天看了《Java编程思想》,上面写到了数组初始化。在Java中可以将一个数组赋值给另一个数组(如上),但是它其实只是复制了一个引用,并没有分配空间。上面代码的打印出来就是“11,12,13,14,15”

posted @ 2018-10-29 20:45  StephenJusky  阅读(172)  评论(0编辑  收藏  举报