私は現在クラスRoom
とクラスHostel
を持っています。rooms = new ArrayList <Room>();
を保持しています。私はBookRoomGUI
クラスを持っています。テキストフィールドを使用してarraylistを変更します
部屋をArrayListに追加されると、それは次のコンストラクタ使用しています:私は内のメソッドを作成しようとしています
fields.add(roomnumberJTextField);
fields.add(bookerJtextField);
fields.add(nightsJTextField);
fields.add(peoplenoJTextField);
:私は、次のJTextFieldを持ってBookRoomGUI
クラスで
public Room(int newRoomNo, boolean newRoomEnSuite)
{
roomNo = newRoomNo;
roomEnSuite = newRoomEnSuite;
roomBooking = "Free";
roomNights = 0;
roomBooker = "No Booker";
}
をHostel
これらのテキストフィールドの値を受け取り、ルーム番号が一致する場合は元のコンストラクタ内の対応する変数を変更します。
public int makeBooking(int number)
{
for (Room room : rooms)
{
if (number == room.getRoomNo())
{
room.setRoomBooker(bookRoom.booker);
}
}
}
私の質問はif文にどういうことでしょうか?現在(java.lang.Stringで)私はRoom
でBookRoomGUI
とsetRoomBookerでテキストフィールドからテキストを取るためにbooker = bookerJtextField.getText();
を使用しますが、これは動作しませんし、私はに適用することができない部屋で
setRoomBooker()を提示しています
'番号でお部屋を格納する方が良いだろう - の代わりに> Room'マップリストの。 'Room'クラスに' setRoomBooker(String) 'メソッドがあることを確認してください。 – khachik