in assignment, have make room booking program. there option count rooms made , show room seats. trying show more 1 room if there 2 rooms seats (tie). have working right print out room seats, confused on how implement ties.
class find largest room
public static void roomcount(arraylist<room> rooms) { int largestroom = 0; int largestnumofrooms = 0; (int = 0; < rooms.size(); i++) { if (rooms.get(i).getnumberofseats() > largestnumofrooms) {//determine largest room largestnumofrooms = rooms.get(i).getnumberofseats(); largestroom = rooms.get(i).getroomnumber(); } }
room class
public class room { scanner input = new scanner(system.in); private int roomnumber; private int numberofseats; private string reservedby = ""; private boolean reserved; private boolean hassmartboard; /** * attribute values 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 classroom have 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 room reserved , reserved by. */ public void reservethisroom(){ this.reserved = true; system.out.println("enter name of person reserving room: "); reservedby = input.nextline(); } /** * update room not reserved , clear 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; } }
instead of storing largestroom in int
can use list
that. can followings
list<integer> largestroom = new arraylist<integer>(); if (rooms.get(i).getnumberofseats() >= largestnumofrooms) {//determine largest room largestnumofrooms = rooms.get(i).getnumberofseats(); largestroom.add(rooms.get(i).getroomnumber()); }
also need return values method.
Comments
Post a Comment