Java 数组赋值(多个值)

2022-09-01 12:30:53

我已经定义了一个Java数组,例如

float[] values = new float[3];

我想在代码中进一步做这样的事情:

values = {0.1f, 0.2f, 0.3f};

但这给了我一个编译错误。有没有更好的方法可以一次定义多个值,而不是这样做?

values[0] = 0.1f;
values[1] = 0.2f;
values[2] = 0.3f;

谢谢!


答案 1

是的:

float[] values = {0.1f, 0.2f, 0.3f};

此语法仅在初始值设定项中允许。您不能在作业中使用它,在作业中,您可以执行以下操作:

values = new float[3];

values = new float[] {0.1f, 0.2f, 0.3f};

试图在语言规范中找到一个参考,但它一如既往地不可读。其他人找到一个吗?


答案 2

在声明时,您可以执行以下操作。

float[] values = {0.1f, 0.2f, 0.3f};

如果已定义该字段,请尝试此操作。

values = new float[] {0.1f, 0.2f, 0.3f};

请注意,第二个版本还会创建一个新数组。如果 是对现有字段的唯一引用,则它有资格进行垃圾回收。values