Domanda

Ho questo ciclo:

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

 }

Vorrei confrontare entry e il successivo dopo. Come lo farei?

È stato utile?

Soluzione

Lo fai su quello precedente.

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

Altri suggerimenti

Mentre esegui il ciclo, potresti impostare ad esempio una variabile chiamata oldEntry (inizializzata su null) e usarla nel modo che desideri.

 Map.Entry<Integer,String> oldEntry = null;
 for (Map.Entry<Integer, String> entry: collection.entrySet()) {
   if (oldEntry != null) doStuff(oldEntry, newEntry);
   oldEntry = entry;
 }
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top