我一直在努力工作,現在已經很久了,我正在運行一個nullpointerexception。我明白,當一個對象指向什麼都不是。在Java中進行冒泡排序時出現這個錯誤。我無法弄清楚是什麼導致這個異常,因此無法解決它。此代碼的目的是按特定順序對學生ID號數組進行排序,我已選擇降序排列。用Java氣泡排序的Nullpointerexception
public static void idNumber()
{
String[] iD = new String[150]; //array for ID Numbers
//System.out.println("Original order");
for(int i = 0; i < nNumStudents; i++) //add ID numbers to array iD
{
iD[i] = srStudents[i].getStudentKey();
//System.out.println(srStudents[i].getStudentKey());
}
//bubble sort
int k =0;
int j =0;
boolean exchange = true;
String temp;
temp = new String();
while ((k < iD.length - 1) && exchange)
{
exchange = false;
k++;
for(j = 0; j < iD.length - k; j++)
{
if(iD[j].compareTo(iD[j + 1]) > 0)
{
temp = iD[j];
iD[j] = iD[j + 1];
iD[j + 1] = temp;
exchange = true;
}
}
}
System.out.println(iD);
}
Exception in thread "main" java.lang.NullPointerException
at java.lang.String.compareTo(String.java:1139)
at StudentRegistrar.idNumber(StudentRegistrar.java:152)
at Sort.main(Sort.java:21)
你得到空指針是什麼行?共享日誌,並且在特定的行上聲明 – 2013-03-24 22:24:36
我在提供錯誤的行中添加了錯誤消息...我不知道當您詢問日誌時您要求什麼?如果可以,請通知我。謝謝 – user2205621 2013-03-24 22:31:15
打印'j'的值。可能它超過了150。 – Maroun 2013-03-24 22:33:52