因此,我正在尝试找到一种方法来将数字的列表或其他东西(' list‘不是'list’的实际Java定义,而是本地用法)放入一个数组中。它会是这样的:
Land FlintsFinger = new Land(0,0,1,0,9, 1 2 3);
后面的数字进入Land中的数组(忽略其他数字)。
有没有什么语法可以即时做到这一点呢?我知道在Python中有元组,但是在Java中有这样的东西吗?
谢谢!
发布于 2012-07-30 18:25:22
你是指像这样的东西吗:
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);
编译器会将最后三个值放入一个数组中。不过,没有只使用空格的字面形式。
发布于 2012-07-30 18:26:33
你可以这样做:
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)
)
发布于 2012-07-30 18:26:05
public Land(Integer int1, Integer... ints){}
你是说varags:http://www.java-tips.org/java-se-tips/java.lang/using-the-varargs-language-feature.html
https://stackoverflow.com/questions/11727289
复制相似问题