Manipulação de duas Arrays List

1 resposta
AnnaGiuliaGatti

Ola, tudo bem?

Estou fazendo um programa em java onde preciso tirar “Cancelar uma reserva”, onde no caso eu iria solicitar o documento do cliente, verificar se ele esta na lista de reserva, caso sim, iria removê-lo da lista e inserir o primeiro cliente da lista de espera.

Tentei fazer dessa forma mas esta dando erro

Estou usando Array list

private static void cancelarReserva(String documento, ArrayList aviao, ArrayList espera ) {

for (Cliente client : aviao) {
		if (documento.contentEquals(client.getDocumento())) {
			
			aviao.remove(client);
			aviao.add(espera.get(0));
			espera.remove(0);
			showMessageDialog(null, "Rserva cancelada: " + client + "Cliente inserido na reserva" + espera.get(0));
			// retorna
		}
	}
}

1 Resposta

staroski

Você não pode remover elementos de um array que está sendo iterado pelo enhanced for, isso causa ConcurrentModificationException.
Utilize o for convencional, com índices que aí você não terá problema.

Criado 30 de maio de 2020
Ultima resposta 30 de mai. de 2020
Respostas 1
Participantes 2