首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >尝试将多个数字传递到数组中

尝试将多个数字传递到数组中
EN

Stack Overflow用户
提问于 2012-07-30 18:23:03
回答 4查看 158关注 0票数 0

因此,我正在尝试找到一种方法来将数字的列表或其他东西(' list‘不是'list’的实际Java定义,而是本地用法)放入一个数组中。它会是这样的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Land FlintsFinger = new Land(0,0,1,0,9, 1 2 3);

后面的数字进入Land中的数组(忽略其他数字)。

有没有什么语法可以即时做到这一点呢?我知道在Python中有元组,但是在Java中有这样的东西吗?

谢谢!

EN

回答 4

Stack Overflow用户

发布于 2012-07-30 18:25:22

你是指像这样的东西吗:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public class Land {

    private final int[] values;

    public Land(int... values) {
        this.values = values;
    }
}

或者如果前五个参数有其他含义:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public Land(int a, int b, int c, int d, int e, int... values) {
    this.values = values;
}

然后将其称为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
new Land(0,0,1,0,9, 1, 2, 3);

编译器会将最后三个值放入一个数组中。不过,没有只使用空格的字面形式。

票数 2
EN

Stack Overflow用户

发布于 2012-07-30 18:26:33

你可以这样做:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Land FlintsFinger = new Land(0,0,1,0,9, new int[]{1, 2, 3});

或者,您可以将构造函数更改为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public Land(int fst, int scn, int thr, int frth, int ffth, int... vals){}

并使用以下命令调用它:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Land FlintsFinger = new Land(0,0,1,0,9,1,2,3);

(如果您输入的所有原始值都是整数,则可以将构造函数缩短为public Land(int... vals) )

票数 1
EN

Stack Overflow用户

发布于 2012-07-30 18:26:05

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public Land(Integer int1, Integer... ints){}

你是说varags:http://www.java-tips.org/java-se-tips/java.lang/using-the-varargs-language-feature.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11727289

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文