小编Oph*_*lia的帖子

如何防止改变变量的值

我是Java的初学者。开发程序时,我创建了一个带有构造函数的对象,该构造函数以变量作为参数。但是当我在创建对象后更改变量的值时,我的对象具有第二个值而不是第一个值。我不希望我的对象更改值。我该怎么办?

public class Person {

    public Person(int[] arrayTest) {
            this.arrayTest = arrayTest;
    }

    public int[] getArray() {
        return this.arrayTest;
    }

    public boolean canHaveAsArray(int[] arrayTest) {
            return true;
    }

    private int[] arrayTest = new int[2];

    public static void main(String[] args) {
        int[] array = new int[] {5, 10};
        Person obj1 = new Person(array);
        array[0] = 20;
        System.out.println(Arrays.toString(obj1.getArray()));
    }
}
Run Code Online (Sandbox Code Playgroud)

我的输出应该是[5,10],但是我却得到[20,10]。即使如上所述更改数组的元素,我也需要获取[5,10]。我该怎么办?

java

14
推荐指数
2
解决办法
1467
查看次数

标签 统计

java ×1