Tenho um ArrayList do tipo Integer, suponhamos que eu tenha adicionado 6 valores nele depois dado um Collections.sort(id), e então estes valores se ordenaram na seguinte sequência:
1, 2, 3, 10, 15 e 22. Como faria pra percorrer o ArrayList e pegar o próximo id válido (no caso seria “4”), sendo “id” o nome do ArrayList
Pegar próximo ID válido do ArrayList
J
1 Resposta
Não testei, mas acho que isso resolve:
int proximoIdValido( List<Integer> lista ) {
if (lista.isEmpty()) {
return 0;
}
int atual = lista.get( 0 );
for (int i = 1; i < lista.size(); i++) {
atual = lista.get( i );
int anterior = lista.get( i - 1 );
if (atual - anterior > 1) {
return anterior + 1;
}
}
return atual + 1;
}
Criado 14 de julho de 2017
Ultima resposta 14 de jul. de 2017
Respostas 1
Participantes 2
Alura POO: o que é programação orientada a objetos? Aprenda os conceitos básicos da programação orientada a objetos, como classes, objetos, herança, encapsulamento e polimorfismo, com exemplos.
Casa do Codigo Inteligencia Artificial e ChatGPT: Da revolucao dos... Por Fabricio Carraro — Casa do Codigo