引数として渡された 2 つのオブジェクトを比較しようとする場合: 最初はオブジェクトとして、2 番目はオブジェクトの配列として (同じ種類)。エラーを取得していますIncompatible conditional operand types Room and allRooms[]
。からのオブジェクトと等しくwhile
なくなるまで、サイクルで反復しようとしています。修正方法は?thisRoomType
rooms
public abstract class Room { ...}
public class LightRoom extends Room {...}
public class DarkRoom extends Room {...}
発信者:
release(thisRoomType, rooms)
パラメータ付き
private Room thisRoomType = this; // is defined in DarkRoom and LightRoom
private Room[] rooms; // is defined in DarkRoom and LightRoom
メソッドで:
public synchronized void release( Room thisRoom, Room[] allRooms) {
try {
int j = 0;
while(thisRoom instanceof allRooms[j]){
jj++;
}
int nextRoom = jj;
...
}
}