【发布时间】:2015-05-28 06:58:48
【问题描述】:
我想将数组作为参数从 main 传递给子类。但看起来它没有初始化。请在下面查看并建议我错了。 提前致谢
class arraymain{
public static void main(String[] arg){
Array obj=new Array();
obj.passArray(new int[]{1,2,3,4,5},4);
}
}
class Array{
void passArray(int[] values,int size){
values=new int[size];
for (int num=0;num<values.length;num++){
System.out.println(values[num]);
}
}
}
OUPTPUT:
0
0
0
0
【问题讨论】:
-
不是因为
values=new int[size];这行吗?您正在覆盖正在传递的任何内容。 -
也没有理由传递
size参数。 -
你不应该给参数变量赋值,除非你确切地知道你在做什么。
-
关于代码质量的旁注:我了解您才刚刚开始,但请花一些时间阅读基本的 Java 概念;例如如何命名类、方法……(参见此处例如:stackoverflow.com/questions/1334204/…)
-
好的先生,我会读的。;)