所以,我正试图找到一种方法来将数字列表或某些内容('list'不是数字的'list'的实际Java定义,而不是白话用法)放入数组中。它会是这样的:
Land FlintsFinger = new Land(0,0,1,0,9, 1 2 3);
使用后面的数字然后进入Land中的数组(忽略其他数字)。
是否有任何语法可以动态执行此操作?我知道在Python中有元组,但Java中有没有这样的东西?
谢谢!
答案 0 :(得分:2)
你的意思是:
public class Land {
private final int[] values;
public Land(int... values) {
this.values = values;
}
}
或者如果前五个参数意味着别的东西:
public Land(int a, int b, int c, int d, int e, int... values) {
this.values = values;
}
然后将其称为:
new Land(0,0,1,0,9, 1, 2, 3);
编译器会将最后三个值放入一个数组中。虽然没有使用空格的文字形式。
答案 1 :(得分:1)
你可以这样做:
Land FlintsFinger = new Land(0,0,1,0,9, new int[]{1, 2, 3});
或者您可以将构造函数更改为:
public Land(int fst, int scn, int thr, int frth, int ffth, int... vals){}
并用
调用它Land FlintsFinger = new Land(0,0,1,0,9,1,2,3);
(如果您输入的所有原始值都是整数,则您的构造函数可以缩短为public Land(int... vals)
答案 2 :(得分:0)
public Land(Integer int1, Integer... ints){}
你的意思是varags:http://www.java-tips.org/java-se-tips/java.lang/using-the-varargs-language-feature.html
答案 3 :(得分:0)
您可以更改构造函数以获取整数数组
int [] params = new int{1,2,3};
Land FlintsFinger = new Land(0,0,1,0,9, params);