the*_*tna 0 java nullpointerexception
我在以下代码中遇到null-exception throw错误.它可能是什么原因?
public static String[] CreateVocab(BufferedReader buffR) throws IOException{
String[] arr = null;
int i = 0;
arr[i]= null;
String line = new String();
while((line = buffR.readLine()) != null){
arr[i] = line;
i=i+1;
}
return arr;
}
Run Code Online (Sandbox Code Playgroud)
编译器在代码中显示Null ponter异常
arr[i]=null.
这是原因:
String[] arr = null;
int i = 0;
arr[i]= null; // 'arr' is null
Run Code Online (Sandbox Code Playgroud)
由于读取的行数未知,建议使用a ArrayList<String>来存储读取的行,并使用ArrayList.toArray()返回a String[](如果返回a ArrayList<String>是不可接受的).
返回的示例List<String>:
public static List<String> CreateVocab(BufferedReader buffR)
throws IOException
{
List<String> arr = new ArrayList<String>();
String line;
while((line = buffR.readLine()) != null){
arr.add(line);
}
return arr;
}
Run Code Online (Sandbox Code Playgroud)
要将数组更改返回return到:
return arr.toArray(new String[]{});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
146 次 |
| 最近记录: |