我有一个doSomething()
接受Array作为参数的方法。当我像下面这样传递数组时:
package org.my;
public class ArrayMistry {
public static void main(String ... args) {
doSomething({1,2});// Compilation Error
}
public static void doSomething(int[] params) {
}
}
我收到编译错误:
线程“ main”中的异常java.lang.Error:未解决的编译问题:令牌“ doSomething”上的语法错误,该令牌之前@,语法错误,请插入“枚举标识符”以完成EnumHeader语法错误,插入“ EnumBody”以完成BlockStatements
在org.my.ArrayMistry.main(ArrayMistry.java:6)
笔记:
如果我像波纹管一样通过,那就可以了
public static void main(String ... args) {
int[] p = {1,2};
doSomething(p);// no Error
doSomething(new int[]{1,2});// no Error
}
数组通过引用传递。您需要使用[1,2]创建一个数组对象,并将该创建对象的引用传递给dosomething
。该new
关键字分配空间创建这个的int
阵列。
int[] arr = new int[]{1,2};
doSomething(arr);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句