我尝试编写一个显示数组值的程序,它由2个类组成。
其中一个类包含一个在循环中使用System.out.print的方法:
public class methodsForArray{
int numbers[];
public void printOutArray(){
for (int i=0; i<numbers.length; i++){
System.out.print(numbers[i]);
}
}
}
在另一个类中,应用了printOutArray()方法:
public class application1{
public static void main(String[]args){
methodsForArray myObject=new methodsForArray();
myObject.numbers[]={1,3,4};
myObject.printOutArray(); //Here i apply the method
}
}
这种方式可以显示字符串或整数。但为什么它不适用于数组呢?我怎么能修复这个程序?尝试编译类application1,导致以下错误消息:
application1.java:5: error: not a statement
myObject.numbers[]={1,3,4};
^
application1.java:5: error: ';' expected
myObject.numbers[]={1,3,4};
^
application1.java:5: error: not a statement
myObject.numbers[]={1,3,4};
^
application1.java:5: error: ';' expected
myObject.numbers[]={1,3,4};
^
4 errors
感谢。
答案 0 :(得分:0)
你错过了很多东西。
1]你应该总是定义你的类名,使第一个字母应该是大写 - 因此它是MethodsForArray
2]您已在int numbers
中声明MethodsForArray
但尚未初始化/已定义。因此,无论何时分配值,您都应该定义它然后分配值;
在这种情况下,我已经分配了匿名数组
myObject.numbers=new int[]{1,3,4};
请在下面找到工作代码示例
public class MainClass{
public static void main(String[]args){
MethodsForArray myObject=new MethodsForArray();
myObject.numbers=new int[]{1,3,4};
myObject.printOutArray(); //Here i apply the method
}
}
class MethodsForArray{
int numbers[];
public void printOutArray(){
for (int i=0; i<numbers.length; i++){
System.out.print(numbers[i]);
}
}
}