Boa noite pessoal,
Estou com uma dúvida cruel que vem tirando meu sono a algum tempo.
Estou implementando um Mapa que contém itens de locação e clientes. Ou seja, é uma lista de prioridades de locação, onde adiciono um objeto cliente e um objeto item de locação.
Estou fazendo dessa maneira:
private Map<ItemLocacao, Cliente> itemCliente = new HashMap<ItemLocacao, Cliente>();
public boolean addItemAoCliente(Cliente cliente, ItemLocacao item) {
boolean retorno = false;
int encontrado = 0;
itemCliente.put(item, cliente);
for (int cont = 0; cont < itemCliente.size(); cont++) {
if (encontrado < 10) {
if (itemCliente.containsKey(item) & itemCliente.containsValue(cliente)) {
encontrado++;
}
retorno = true;
} else {
retorno = false;
}
}
return retorno;
}
Até ai td bem, porém, qdo adiciono um segundo cliente com o mesmo item que o primeiro cliente ja tem, o segundo cliente sobrescreve o anterior, e fica só ele com o item.
assertTrue(locadora.addItemAoCliente(cliente1, filme1));
assertTrue(locadora.addItemAoCliente(cliente2, filme1));//sobrescreve o anterior
Ele não teria de adicionar uma nova linha e colocar esse segundo cliente como outro cara?
Acho q tem pêlo em ovo ai, ma snão to conseguindo identificar…
Quem tiver uma solução, agradeço desde já!!
Abs