Java noobie数组问题
我有两个数据类 第一:Java noobie数组问题,java,arrays,dynamic,Java,Arrays,Dynamic,我有两个数据类 第一: public class Question { public CharSequence question; public Answer answers[]; } 第二: public class Answer { public CharSequence text; public int number; } 现在我想保存一个问题的答案: Question qstn.answers = new Answer[2]; [...] 但
public class Question {
public CharSequence question;
public Answer answers[];
}
第二:
public class Answer {
public CharSequence text;
public int number;
}
现在我想保存一个问题的答案:
Question qstn.answers = new Answer[2];
[...]
但我有一个空点异常。怎么了?我不能在其他类中更改数组的长度吗?您是否创建了问题优先的新实例,例如
Question qstn = new Question();
qstn.answers = new Answer[2];
此外,除非您进行了明智的优化,否则您可能希望尝试封装,并将实例变量设置为私有。通过公共API访问,例如getter或/和setter
此外,您可能希望在创建对象时实例化答案,例如
public class Question {
public CharSequence question;
public Answer answers[] = new Answer[2];
}
或者你可以在Question的构造函数中执行此操作(你需要添加一个构造函数,因为编译器会根据情况默认为你生成一个非参数构造函数)。你是否先创建了Question的新实例,例如
Question qstn = new Question();
qstn.answers = new Answer[2];
此外,除非您进行了明智的优化,否则您可能希望尝试封装,并将实例变量设置为私有。通过公共API访问,例如getter或/和setter
此外,您可能希望在创建对象时实例化答案,例如
public class Question {
public CharSequence question;
public Answer answers[] = new Answer[2];
}
或者您可以在Question的构造函数中执行此操作(您需要添加一个构造函数,因为编译器将按照当前的方式默认为您生成一个非参数构造函数)。您需要实例化您的Question类,首先:
Question qstn = new Question();
您需要实例化问题类,首先:
Question qstn = new Question();
试试这个:
Question qstn = new Question();
qstn.answers = new Answer[2];
试试这个:
Question qstn = new Question();
qstn.answers = new Answer[2];
我不能更改数组的长度吗
在别的班
这不是问题所在
问题是您尚未初始化qstn
你应该做的是:
Question qstn = new Question();
qstn.answers = new Answer[2];
我不能更改数组的长度吗
在别的班
这不是问题所在
问题是您尚未初始化qstn
你应该做的是:
Question qstn = new Question();
qstn.answers = new Answer[2];
您试图错误地访问阵列
Question qstn = new Question();
qstn.answers = new Answer[2];
您试图错误地访问阵列
Question qstn = new Question();
qstn.answers = new Answer[2];
对。您可以在另一个类中更改数组的长度 请检查是否已初始化变量
qstn
Question qstn = new Question();
对。您可以在另一个类中更改数组的长度 请检查是否已初始化变量
qstn
Question qstn = new Question();
我只想说,这是一个使用列表或集合而不是数组的好地方。列表或集合可以在没有预设大小的情况下增长。现在我使用“public ArrayList answer”;我只想说,这是使用列表或集合而不是数组的好地方。列表或集合可以在没有预设大小的情况下增长