我有一个方法有一个数组参数,如:
public static void foo(int[] param) {
// Some code
}
Run Code Online (Sandbox Code Playgroud)
而且我也可以通过写作来调用方法
foo(new int[3]);
Run Code Online (Sandbox Code Playgroud)
通常,我们通过new运算符或双括号初始化器(如{1,2,3})声明和初始化数组.例如,int[] foo = new int[3]; 或 int[] foo = {1, 2, 3};.
但是使用双括号初始化器作为方法的参数是不可能的.{}仅适用于创建数组对象.
这是我的问题:新运营商和{}?之间有什么区别吗?如果有,那是什么?