我有这个循环:
for (Map.Entry<Integer, String> entry: collection.entrySet()) {
}
我想比较entry
和之后的下一个。我该怎么做?
答案 0 :(得分:6)
你是在前一个上做的。
Map.Entry<Integer, String> previous = null;
for (Map.Entry<Integer, String> entry : collection.entrySet()) {
if (previous != null) {
// compare entry to rpevious
}
previous = entry;
}
答案 1 :(得分:4)
当你循环时,你可以设置一个名为oldEntry的变量(例如,初始化为null)并以你想要的方式使用它。
Map.Entry<Integer,String> oldEntry = null;
for (Map.Entry<Integer, String> entry: collection.entrySet()) {
if (oldEntry != null) doStuff(oldEntry, newEntry);
oldEntry = entry;
}