1

BlueJ を IDE として使用していますが、この Java コードをコンパイルしようとすると、エラーが発生しますincompatible types

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で、2 つの ArrayList が含まれています。

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

このSportクラスには、次の ArrayList があります。

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

このCourtクラスには、次の ArrayLists があります。

private ArrayList<Booking> listBooking;

うまくいけば、あなたは私を正しい方向に向けることができます. ありがとう!

編集:これはコードです、

public ArrayList getCourtSportArrayList()
{
  return CourtList;
}
4

1 に答える 1

1

getCourtSportArrayList()あなたの Sport クラスのメソッドのようです。このメソッドは を返す必要がありますが、現在は返してList<Court>いないようです。

その結果、メソッドは次のようになります。

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

補足: ArrayList の特定の実装の詳細を使用しない限り、List<Court>代わりにジェネリック Type を指定する必要があります。ArrayList<Court>

于 2013-04-25T09:12:01.857 に答える