的Java不兼容的类型错误的ArrayList

问题描述:

我使用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

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