Pergunta

Eu tenho este loop:

 for (Map.Entry<Integer, String> entry: collection.entrySet()) {

 }

Eu gostaria de comparar entry eo próximo depois disso. Como eu faria isso?

Foi útil?

Solução

Você faz isso no anterior.

Map.Entry<Integer, String> previous = null;
for (Map.Entry<Integer, String> entry : collection.entrySet()) {
  if (previous != null) {
    // compare entry to rpevious
  }
  previous = entry;
}

Outras dicas

Como você varrer você pode definir uma variável chamada oldEntry por exemplo (inicializada para null) e usar isso da maneira que você quiser.

 Map.Entry<Integer,String> oldEntry = null;
 for (Map.Entry<Integer, String> entry: collection.entrySet()) {
   if (oldEntry != null) doStuff(oldEntry, newEntry);
   oldEntry = entry;
 }
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top