一种未知的Java语法

时间:2011-11-14 20:43:25

标签: java

让我们在Java中看到以下代码片段。

package common;

final public class Main
{
    private static void show(Object... args)    //<--Here it is...
    {
        for(int i=0;i<args.length;i++)
        {
            System.out.println(args[i]);
        }
    }

    public static void main(String[] args)
    {
        show(1, 2, 3, 4, 5, 6, 7, 8, 9);
    }
}

Java中的上述代码运行良好,并通过控制台上的唯一循环显示从1到9的数字。这里唯一的问题是上面代码中(Object... args)的含义。

2 个答案:

答案 0 :(得分:6)

三点表示法是可变数量参数的语法,看看here

答案 1 :(得分:2)

您正在使用Java的varargs表示法,它允许将最终参数作为数组或参数序列(不确定长度)传递。在你的情况下,你将它们作为一系列args传递:

show(1, 2, 3, 4, 5, 6, 7, 8, 9);

...但你也可以像这样传递它们:

show(new int[] {1, 2, 3, 4, 5, 6, 7, 8, 9});

如果不支持此功能,您可能需要在方法签名中接受一个数组(并始终在数组中传递输入)或指定固定数量的int个参数。