在方法参数中初始化数组
在 PHP 中,您可以执行以下操作:
method(array("a", "b"));
在 Java 中,是否可以将 String 数组初始化为方法调用中的参数,如下所示:
method(new String[] = {"a", "b"});
谢谢!
在 PHP 中,您可以执行以下操作:
method(array("a", "b"));
在 Java 中,是否可以将 String 数组初始化为方法调用中的参数,如下所示:
method(new String[] = {"a", "b"});
谢谢!
Java 有一个等效的构造:
import java.util.Arrays;
public class Foo {
public void method(String[] myStrArray) {
System.out.println(Arrays.toString(myStrArray));
}
public static void main(String[] args) {
Foo foo = new Foo();
foo.method(new String[]{"hello", "goodbye"}); // **array created inline**
}
}
@Hovercraft的答案显示了如何在Java中创建内联数组。
您可以通过使用实用程序方法(利用Java的有限类型推断)来摆脱冗余数组类型注释,从而进一步改进该解决方案。
法典:
import java.util.Arrays;
// Utility class
class Array {
public static <A> A[] of(A ... elements) {
return elements;
}
}
// Main class
class Main {
public static void method(String[] s) {
System.out.println(Arrays.toString(s));
}
public static void main(String[] args) {
method(Array.of("a", "b", "c"));
}
}