Hog*_*790 3 java arrays null exception arraylist
我在将数组列表转换为java中的数组时遇到了一些麻烦.
我有一个名为Table的类,它包含一个名为applicantsString 的数组列表.当我使用我的toArray()函数时,似乎没有将数组列表转换为数组.
我知道这个,因为当我运行listArray()函数时,它会给出错误:
java.lang.NullPointerException.
这是代码.任何帮助将不胜感激.
public class Table {
public ArrayList<String> applicants;
public String appArray[];
public Table() {
applicants = new ArrayList<String>();
}
public void addApplicant(String app) {
applicants.add(app);
}
public void toArray() {
int x = applicants.size();
String[] appArray = new String[x];
appArray = applicants.toArray(appArray);
}
public void list() {
for (int i = 0; i < applicants.size(); i++) {
System.out.println(applicants.get(i));
}
}
public void listArray() {
for (int i = appArray.length; i > 0; i--) {
System.out.println(appArray[i]);
}
}
}
Run Code Online (Sandbox Code Playgroud)
Sot*_*lis 16
这是因为您appArray在这里隐藏了方法中的字段:
int x = applicants.size();
String[] appArray = new String[x];
appArray = applicants.toArray(appArray);
Run Code Online (Sandbox Code Playgroud)
您appArray应该使用appArray已在类中声明的字段时创建一个新的局部变量.
你应该做
public void toArray()
{
appArray = applicants.toArray(new String[0]);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
35711 次 |
| 最近记录: |