是否可以初始化String []数组并在一行中的方法中传递它?

时间:2010-07-21 14:56:50

标签: java

现在我有以下代码:

String[] values = {str1, str2};
Utils.myMethod(values);

我想知道是否有办法在一行中完成所有这些操作。我试过了:

Utils.myMethod({str1, str2});

但这不起作用。提前谢谢。

3 个答案:

答案 0 :(得分:11)

您需要明确指定数组的类型。这不是推断。因此以下是有效的,

Utils.myMethod(new String[] {str1, str2}); 

答案 1 :(得分:4)

如果您拥有相关方法,请考虑使用varargs语法并将其声明为:

void myMethod(String... args) {

然后,你可以这样称呼它

Utils.myMethod(str1, str2);

然后让编译器将数组放在一起!

答案 2 :(得分:0)

好吧,您可以随时重写方法以使用varargs。这样,你可以写

Utils.myMethod(str1, str2);