在我的作业中,我必须做一个房间预订程序。有一个选项可以计算房间的数量,并显示最多座位的房间。我试图做的是显示多个房间,如果有两个房间的座位最多(领带)。我现在正在打印最多座位的房间,我只是对如何实现这些关系感到困惑。在通过数据列表搜索时处理领带
类找到最大的房间
public static void roomCount(ArrayList<Room> rooms) {
int largestRoom = 0;
int largestNumOfRooms = 0;
for (int i = 0; i < rooms.size(); i++) {
if (rooms.get(i).getNumberOfSeats() > largestNumOfRooms) {//Determine largest room
largestNumOfRooms = rooms.get(i).getNumberOfSeats();
largestRoom = rooms.get(i).getRoomNumber();
}
}
房类
public class Room {
Scanner input = new Scanner(System.in);
private int roomNumber;
private int numberOfSeats;
private String reservedBy = "";
private boolean reserved;
private boolean hasSmartBoard;
/**
* Get the attribute values from the user.
*/
public Room(int roomNumber) {
this.roomNumber = roomNumber;
}
public void getRoomDetailsFromUser() {
System.out.print("Enter number of seats: ");
numberOfSeats = input.nextInt();
input.nextLine();
System.out.print("Does this classroom have a smart board? (Y/N)");
hasSmartBoard = input.nextLine().equalsIgnoreCase("y");
}
public boolean isHasSmartBoard() {
return hasSmartBoard;
}
public void setHasSmartBoard(boolean hasSmartBoard) {
this.hasSmartBoard = hasSmartBoard;
}
public int getNumberOfSeats() {
return numberOfSeats;
}
public void setNumberOfSeats(int numberOfSeats) {
this.numberOfSeats = numberOfSeats;
}
public String getReservedBy() {
return reservedBy;
}
public void setReservedBy(String reservedBy) {
this.reservedBy = reservedBy;
}
public boolean isReserved() {
return reserved;
}
public void setReserved(boolean reserved) {
this.reserved = reserved;
}
public int getRoomNumber() {
return roomNumber;
}
/**
* Update the room to reserved and get the reserved by.
*/
public void reserveThisRoom(){
this.reserved = true;
System.out.println("Enter the name of the person reserving this room: ");
reservedBy = input.nextLine();
}
/**
* Update the room to not reserved and clear the reserved by.
*/
public void releaseThisRoom(){
this.reserved = false;
reservedBy = "";
System.out.println("Room has been released\n");
}
public String toString() {
String output = "\n\n******************************"
+ "\nRoom Number: " + roomNumber
+ "\nNumber of Seats: " + numberOfSeats
+ "\nReserved By: " + reservedBy
+ "\nReserved: " + reserved
+ "\nSmart Board: "+ hasSmartBoard;
return output;
}
}
当我使用,我得到一个错误,说int不能被推定 –
抱歉coulldn't理解你的评论。你有没有把最大的房间改成ArrayList? –
stinepike
我在哪里将最大的房间更改为ArrayList? –