Java 为什么我不能使用{quot;a";,“b";}作为字符串数组方法参数的输入
我想知道,为什么我不能使用{“a”,“b”}作为字符串数组方法参数的输入Java 为什么我不能使用{quot;a";,“b";}作为字符串数组方法参数的输入,java,Java,我想知道,为什么我不能使用{“a”,“b”}作为字符串数组方法参数的输入 public static void fun(String[] s) { } public static void main(String[] args) { String[] s = {"a", "b"}; // OK fun(s); // This line is not accepted by compiler fun({"a", "b"}); } 你应使用: fu
public static void fun(String[] s) {
}
public static void main(String[] args) {
String[] s = {"a", "b"};
// OK
fun(s);
// This line is not accepted by compiler
fun({"a", "b"});
}
你应使用:
fun(new String[]{"a","b"});
在java中,甚至字符串数组也被视为对象。您需要字符串数组的对象作为fun
参数。该对象由String[]{“a”,“b”}
提供,这是一个匿名字符串数组
,完全构造并初始化。来自:
数组由数组创建表达式()或数组初始值设定项()创建
数组初始值设定项语法仅在作为变量声明的一部分时直接有效。在其他任何地方(包括以后的指定),都必须使用数组创建表达式:
fun(new String[] { "a", "b" });
我怀疑这基本上使语言的指定方式更简单。java不是这样定义的。