У меня есть программа регистрации, где пользователи могут бронировать столики в ресторане.
Поскольку мне нужно хранить потенциально бесконечное количество клиентов, я не могу явно создавать новые экземпляры своего класса Customer, потому что мне нужно быть возможность добавлять их во время выполнения.
Я думал об использовании HashMap для вставки каждого пользователя через форму регистрации, которую он заполняет, однако вместо сохранения уникальных значений каждого клиента он перезаписывает их последней записью в хэш-карте.
Для ясности, ключ меняется, он успешно добавляет новый ключ, но значения внутри предыдущего ключа перезаписываются
Пример
Класс Customer имеет 3 установщика: set Id, set fname, set lname.
Они просто берут ввод из регистрационной формы и присваивают его каждой переменной экземпляра.
Я создаю свой единственный экземпляр класса с Customer cust = new Customer (). И HashMap hm = new HashMap ()
Пользователь заполняет форму, выбирает отправить. Эта кнопка отправки вызывает все установщики, чтобы назначить информацию.
Затем я использую hm.put (cust.getId (), cust).
И я могу правильно получить значения с помощью Customer retrieveCust = (Customer) map.get (ID) Строка fname = retrieveCust.getName ()
Однако это только последний набор значений. Так что, если у меня есть Джон Доу и Джейн Доу, только Джейн извлекается для каждого ключа.
Есть ли способ заставить его хранить каждый отдельный «экземпляр» cust со значениями, представленными в форме?