关于JAVA复制的问题

Posted StephenJusky

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于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”

以上是关于关于JAVA复制的问题的主要内容,如果未能解决你的问题,请参考以下文章

有趣的 C++ 代码片段,有啥解释吗? [复制]

在Java中将字符串集合复制到另一个字符串的时间复杂度

Android Java:在 onCreateView() 中返回空视图的片段

这两个代码片段之间有区别吗?如果有,那又如何? [复制]

什么是在 C++ 中获取总内核数量的跨平台代码片段? [复制]

Android:使用支持片段管理器时复制片段