I have the following problem. I have an integer position which starts at 1 and increments every time a specific person from a txt is found at a specific position in an xml. If I use the classic iteration with the foreach for (PersonMatchInfo pmi : personMatchInfo)
it works, but my senior asked me to do with the Java 8 foreach
and this type of iteration works only with final variables. How can I increment the integer in the new Java 8 loop? Thank you.
JavaScript
x
int position = 1;
personMatchInfo.forEach(pmi ->{
if (!stopwatch1.isStarted()) {
stopwatch1.start();
} else if (stopwatch1.isStarted()) {
}
if (pmi.getPersonName().equals(e.getValue())) {
positionMap.put(position, positionMap.get(position) + 1);
break;
} else {
position++;
}
});
Advertisement
Answer
You can use AtomicInteger
, and incrementAndGet
method on it.
Other solution would be int[] position = new int[]{1};
and incrementing position[0]++;