【问题标题】:Java "..." expression [duplicate]Java“...”表达式[重复]
【发布时间】:2015-09-23 09:00:30
【问题描述】:

我对某些代码中的“...”表达式很感兴趣,例如:

public static void main(String... args){
   //code here
}

这是有效的(也许是 lambda,我不确定)。

我也在 Spring 的 Sort 文件中找到它:

public Sort(Sort.Order... orders) {
    this(Arrays.asList(orders));
}

有人可以帮助我吗?

【问题讨论】:

标签: java


【解决方案1】:

这个习语不是 lambda,它被称为 varargs(可变参数的缩写),它从 Java 5 开始就存在。

该功能允许您在方法签名的末尾采用不确定数量的相同类型(或子类型)的参数,每个方法签名一次。

然后可以将参数作为该类型的数组处理。

【讨论】:

    【解决方案2】:

    “...”是“varargs”:它在第一个示例中接受任意数量的字符串,在第二个示例中接受订单。 这些方法也接受数组。

    【讨论】:

      猜你喜欢
      • 2017-01-02
      • 1970-01-01
      • 1970-01-01
      • 2014-01-20
      • 1970-01-01
      • 2012-07-09
      • 2016-04-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多