の配列リストをforeachのためにJavaができない:エラー:私は、カスタムクラスのオブジェクトの配列リストをforeachのためにしようとすると、私は次のエラーを取得するカスタムクラス(非互換タイプ)
「互換性のない型:(オブジェクト)はArrayListに変換できません。 "
this oneのような他のいくつかの投稿を読んだ後、私はちょうど鋳造が行方不明であったり、オブジェクトの型を明示的に宣言していると思っていました。しかし、それを修正した後も問題は解決されません。
ArrayList<Room> roomList = new ArrayList<Room>();
for (final ArrayList room: roomList)
何が欠けていますか?違いがある場合は、私のIDEとしてthisオンラインコンパイラを使用しています。
import java.io.*;
import java.util.*;
class SchedulingApplication
{
ArrayList<Room> roomList = new ArrayList<Room>();
int roomCount = 0;
static class Meeting
{
double startTime;
double endTime;
}
static class Room
{
int roomNumber = 0;
ArrayList<Meeting> meetingList = new ArrayList<Meeting>();
}
void addNewMeeting(double start, double end)
{
Meeting meeting = new Meeting();
checkConflict(meeting);
return;
}
void addNewRoom(int number)
{
Room room = new Room();
room.roomNumber = number;
roomCount++;
roomList.add(room);
}
int checkConflict(Meeting newMeeting)
{
//boolean isScheduled = false;
boolean isConflict = false;
if (roomCount == 0)
{
roomCount++;
return roomCount;
}
else
{
for (final ArrayList room: roomList)
{
isConflict = false;
for (final ArrayList oldMeeting: room.meetingList())
{
//see if the new meeting starts during all of the old meetings in this room
if (newMeeting.startTime > oldMeeting.startTime && newMeeting.startTime < oldMeeting.endTime)
{
isConflict = true;
break;
}
}
if (!isConflict)
{
//isScheduled = true;
return room.roomNumber();
}
}
}
}
public static void main (String[] args) {
}
}
ヒント: 'room'は' ArrayList'ですか? –
この種のループの公用語は、 "for for loop"です。あなたがGoogleの場合は、正しい方法を書いているチュートリアルを簡単に見つけることができます。 – ajb