如何转换int[]成List<Integer>Java中?
当然,我对任何其他答案感兴趣,而不是逐个循环地进行.但如果没有其他答案,我会选择那个最好的,以表明这个功能不是Java的一部分.
我使用方法Arrays.copyOf将一个整数数组复制到另一个数组.如果我更改其中一个数组中的元素,则相应的成员不会相应更改.
但是,当我使用相同的方法将对象数组复制到另一个对象数组时.并且我更改了其中一个数组中的元素,相应的成员也相应地更改.
有人可以解释为什么两种情况下的行为都不同.
示例:字符串数组
int[] array1 = {1,2,3};
int[] array2 = Arrays.copyOf(array1, array1.length);
array1[1] = 22; // value of array2[1] is not set to 22
array1[2] = 33; // value of array1[2] is not set to 33
Run Code Online (Sandbox Code Playgroud)
示例:对象数组
Person[] AllPersons = new Person[3];
for(int i=0; i<3; i++)
{
AllPersons[i] = new Person();
}
AllPersons[2].Name = "xyz";
Person[] OtherPersons = Arrays.copyOf(AllPersons, 3); // value of OtherPersons[2].Name is also set to "xyz"
AllPersons[2].Name = "pqr"; // value of OtherPersons[2].Name is also set …Run Code Online (Sandbox Code Playgroud)