2011-07-02 109 views
6

当我们在主方法和String中写入String [] a时有什么区别... a?String [] a和String之间的区别... a

public static void main(String[]a) 

public static void main(String...a) 
+0

可能重复的[Java varags方法参数列表与数组](http://stackoverflow.com/questions/5405673/java-varags-method-param-list-vs-array) –

回答

8

第一个期待一个参数,它是一个字符串数组。

第二个接受零个或多个字符串参数。它也接受一串字符串。

+0

嘿谢谢你的答案... – Surbhi

+3

第二个实际上也接受一个String数组参数。 – Stim

3

第二个被称为varargs并在Java 5中引入。它可以帮助您在需要将零个或多个参数传递给方法时显式创建数组。

8
public static void main(String[] a) 

这个必须使用String []类型的单个参数或null来调用。

public static void main(String...a) 

这一个可以与字符串型],或与任何数量的字符串参数,像主(“A”,“B”,“C”)的单个参数被调用。但是,如果您传递null值,编译器会发出抱怨,因为它无法确定您的值是否为值为空的String []或具有1个空值字符串的数组。

Inside main(),在任一情况下,变量aString[]

既然是main,你可能不会考虑如何调用它......通常这是第一件事。但是我已经转向使用第二种格式来存放我的所有电源。将参数传递给它进行测试更容易。

+0

嘿,谢谢你的解释。 – Surbhi

相关问题