Garmaine Staff asked 1 year ago

i hope someone can help me, i'm struggling with this since yesterday…

I'm working right now on a Hotel Management System project. What i'm trying to do is, to put an array[] Clients into an ArrayList of Rooms and then set this room attribute to 'occupied = true' and save that so if i try to use that room for other client it doesn't let me.

Room class

public class Room {
    private int number;
    private float price= 30.5f;
    private boolean occupied = false;
    private Client[] hosts;

    public Room(int number, Client[] hosts) {
        this.number= number;
        this.hosts= hosts;

    public void setOccupied() {
        this.occupied = true;

Client class

public class Client {
    private String id;
    private String name;
    private String lastName;

    public Client(String id, String name, String lastName) { = id; name;
        this.lastName= lastName;

This is what i've got on my Main so far… i'm calling the next function

public void checkIn(ArrayList<Room> myRooms){
        int roomNumber;
        String id;
        String name;
        String lastName;

        Scanner input = new Scanner(;
        int people = input.nextInt();
        Client[] array = new Client[people];

        for (int i = 0; i < people; i++) {
            System.out.println("Enter ID" + (i+1));
            id =;

            System.out.println("Enter name " + (i+1));

            System.out.println("Enter last name " + (i+1));

            array[i] = new Client(id,name,lastName);


        System.out.print("Assign to room number... : ");
        roomNumber = input.nextInt();

        myRooms.add(new Room(roomNumber, array));

        //here i tried doing:

        //but .set() expects an index...


Once i have this, i want to create a function that shows a list of rooms that are occupied

Excuse my english since i'm Spanish