java-如何设置初始化数组的值?

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

我想自学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 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);
...