无法在另一个 class 中设置值
can't set a value in another class
这是一个class的方法,courses是另一个class的一个数组,我在main中设置了cn的值,但是它跳过了它后面的所有代码。这是为什么?
public class GradeBook {
Scanner r=new Scanner(System.in);
private int cn;
private Course courses[]=new Course[cn];
void entercourse(){
for(int i = 0;i<courses.length;i++){
System.out.println("c name");
courses[i].setName(r.nextLine());
System.out.println("mark");
courses[i].setMark(r.nextInt());
courses[i].setpass();
}
}
因为int cn
变量默认为0。你需要在那里输入一些 +ve 值才能工作
在方法外声明数组时,需要指定数组大小值。在您的程序中,您使用了整数 cn。但是,您没有指定 "cn" 实际代表什么,因此默认情况下它变为 0。这就是为什么您的数组为空并且您的程序似乎跳过了代码。
这是一个class的方法,courses是另一个class的一个数组,我在main中设置了cn的值,但是它跳过了它后面的所有代码。这是为什么?
public class GradeBook {
Scanner r=new Scanner(System.in);
private int cn;
private Course courses[]=new Course[cn];
void entercourse(){
for(int i = 0;i<courses.length;i++){
System.out.println("c name");
courses[i].setName(r.nextLine());
System.out.println("mark");
courses[i].setMark(r.nextInt());
courses[i].setpass();
}
}
因为int cn
变量默认为0。你需要在那里输入一些 +ve 值才能工作
在方法外声明数组时,需要指定数组大小值。在您的程序中,您使用了整数 cn。但是,您没有指定 "cn" 实际代表什么,因此默认情况下它变为 0。这就是为什么您的数组为空并且您的程序似乎跳过了代码。