我工作的一類決賽。它應該是一個「媒體庫」,用於存儲關於人物媒體(DVD,遊戲等)的信息,以及它應該在新媒體項目中採用的其他信息,將它們存儲到陣列中並在提示時顯示它們。它可以完成所有這些操作,但是當它顯示它時,即使它正在執行它,它也會在getter上產生一個NullPointerException。NullPointerException異常的吸
public class MediaItem {
private String title;
private String format;
private boolean onLoan;
private String loanedTo;
private String dateLoaned;
public MediaItem(){
title = null;
format = null;
onLoan = false;
loanedTo = null;
dateLoaned = null;
}
public MediaItem(String title, String format){
this.title = title;
this.format = format;
onLoan = false;
}
以上是爲使「MediaItems」因爲我們被告知要叫他們
下面的類中的字段和構造函數,另一個類的部分,即庫本身。一個用於存儲媒體項目的陣列,另一個用於打印列表。還有add方法以及我如何將它們添加到數組中。
private MediaItem[] items = new MediaItem[100];
private String[] listOfItems = new String[100];
private int numberOfItems = 0;
public void addNewItem(String title, String format){
MediaItem item = new MediaItem(title, format);
items[numberOfItems] = item;
numberOfItems++;
}
這裏是
public void listAllItems(){
for (int i = 0; i < items.length; i++){
System.out.println(items[i].getTitle());
}
}
我有問題的部分這不是它應該做的,但我現在的問題是,它並打印出項目的整個列表,但也給出了NullPointerException,我不知道爲什麼。這是被稱爲吸氣是一個基本的Eclipse產生的吸氣
public String getTitle() {
return title;
}
這是一個Java我粗,所以我新,所以請溫柔。我相信這是所有相關的部分,所以任何幫助表示讚賞!
'item [i]'對於'i'的某個值肯定是空的。如果你不調用'addNewItem' 100次,那麼這行代碼總會有一個NPE。 – 2014-12-06 13:05:21