2013-04-25 62 views
1

我使用BlueJ的作爲IDE,每當我嘗試編譯這個Java代碼它給我一個錯誤:incompatible types突出的括號:的Java不兼容的類型錯誤的ArrayList

s.getCourtSportArrayList() 

爲什麼發生這種情況?

public void showCourtBookings() 
{ 
for(Sport s : sportList) 
{ 
    for(Court c : s.getCourtSportArrayList()) 
    { 
    System.out.println("Court: " + c.getCourt); 
    int i; 
    i=1; 
    for(Booking b : c.getBookings()) 
    { 
     System.out.println("Booking: " + i + "Start Time: " + b.getTimeStart() + "End Time :" + b.getEndTime()); 
     i = i + 1; 
    } 
    } 
} 
} 

這是一個類Club,它包含兩個ArrayLists;

private ArrayList<Member> MemberList; 
private ArrayList<Sport> sportList; 

Sport類具有以下的ArrayList:

private ArrayList<Court> CourtList = new ArrayList<Court>(); 

Court類有這些的ArrayList:

private ArrayList<Booking> listBooking; 

希望你可以點我在正確的方向。謝謝!

編輯:這是代碼,

public ArrayList getCourtSportArrayList() 
{ 
    return CourtList; 
} 
+1

不應該'c.getCourt'是'c.getCourt()'? – Alex 2013-04-25 09:11:05

+1

getCourtSportArrayList()的代碼是什麼? – 2013-04-25 09:11:34

回答

1

getCourtSportArrayList()似乎是你的運動類的方法。這種方法需要返回一個List<Court>,它現在顯然不正確。

在結果的方法應該是這樣的:

public List<Court> getCourtSportArrayList() 
{ 
    return CourtList; 
} 

邊注:除非你使用ArrayList具體的實施細則,則應指定泛型類型List<Court>而不是ArrayList<Court>

+0

好的,謝謝,我現在就試試! – user2277729 2013-04-25 09:13:59

+0

雖然...或者我寫錯了嗎? public ArrayList getCourtSportArrayList() { return CourtList; } – user2277729 2013-04-25 09:14:47

+0

Java不會奇怪地將getter和setter方法添加到私有ArrayList的私有成員對象 CourtList。你需要明確地編碼。 – luksch 2013-04-25 09:15:37