java-如何设置初始化数组的值?
我想自学java,无意中发现了一个问题。在python背景中,我会定义一个数组(或列表),比如a=[],然后执行类似java-如何设置初始化数组的值?,java,arrays,Java,Arrays,我想自学java,无意中发现了一个问题。在python背景中,我会定义一个数组(或列表),比如a=[],然后执行类似a=[1,2,3,4,5] 在java中,如果我定义像int[]a这样的数组,我就不能像a={1,2,3,4,5}那样给它赋值 为什么??我当然可以像int[]a{1,2,3,4,5}那样初始化它,但为什么不分配它呢 thx.阵列 列表 //数组#asList(T..a) List=Arrays.asList(1,2,3,4,5); //ArrayList List arrayLi
a=[1,2,3,4,5]
在java中,如果我定义像int[]a这样的数组,我就不能像a={1,2,3,4,5}那样给它赋值代码>
为什么??我当然可以像int[]a{1,2,3,4,5}那样初始化它代码>,但为什么不分配它呢
thx.阵列
列表
//数组#asList(T..a)
List=Arrays.asList(1,2,3,4,5);
//ArrayList
List arrayList=新建arrayList();
增加第(1)款;
...
//链接列表
List linkedList=新建linkedList();
增加第(1)款;
...
检查此链接您只能在java初始化期间使用以下语法执行此操作:int[]a=new int[]{1,2,3,4,5}代码>@f1sh但是如果我想把a改成{5,2,4}怎么办?我是否总是必须重新初始化新数组?@Pythoneer数组在Java中是非常轻量级的对象。如果您想要更多功能,您必须设计自己的类来包装数组,或者使用API的数据结构之一,如ArrayList
。使用List
int[] arr1 = new int[] { 1, 2, 3, 4, 5 };
int[] arr2 = new int[5];
arr2[0] = 1;
arr2[1] = 2;
arr2[2] = 3;
...
// Arrays#asList(T.. a)
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5);
// ArrayList
List<Integer> arrayList = new ArrayList<>();
list.add(1);
...
// LinkedList
List<Integer> linkedList = new LinkedList<>();
list.add(1);
...