[英]Null Pointer Exception Error When Printing Array of Strings from a Text File in Java
解決了
數組中文本文件的第一行是學生人數。 我需要掃描該數字,使我的數組成為數字的大小,然后從文本文件中打印出學生的每一行及其對應的信息。
我已經對該邏輯進行了數次審查,但似乎找不到它可能有什么問題。 我可以編譯該方法,但是當我運行它時,我會得到一個空指針異常,這意味着在將數組分配給學生信息時我必須做錯了什么。
我現在的代碼是:
import java.io.*;
import java.util.Scanner;
import java.util.Arrays;
public class Main {
public static void main(String[] args) throws IOException {
Chart();
}
public static void Chart() throws IOException {
int n;
Scanner fileScan;
fileScan = new Scanner(new File("scores.txt"));
n = fileScan.nextInt();
String[] students = new String[n];
for (int i = 0; i > n; i++) {
students[i] = fileScan.nextLine();
}
Arrays.sort(students);
for (int i = 1; i > n; i++) {
System.out.println(students[i]);
}
}
}
我是否正在正確地將文本文件中的行讀入數組? 如果是這樣,導致錯誤的原因是什么?
for(int i = 0; i > n; i++) {
students[i] = fileScan.nextLine();
}
此循環未將值插入數組。
一定是,
for(int i = 0; i < n; i++) {
students[i] = fileScan.nextLine();
}
沒有堆棧跟蹤(這將指向哪一行具有空引用),很難確定-但是兩個循環條件都不正確:
for(int i = 0; i> n; i ++)
您的循環塊永遠不會與該檢查一起運行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.