جافا Hashmap التكرار: انظروا إلى قيمتين في آن واحد؟
-
07-07-2019 - |
سؤال
ولدي هذه الحلقة:
for (Map.Entry<Integer, String> entry: collection.entrySet()) {
}
وأود أن مقارنة entry
واحدة المقبل بعد ذلك. كيف أفعل ذلك؟
المحلول
وأنت تفعل ذلك على سابقتها.
Map.Entry<Integer, String> previous = null;
for (Map.Entry<Integer, String> entry : collection.entrySet()) {
if (previous != null) {
// compare entry to rpevious
}
previous = entry;
}
نصائح أخرى
وكما تعلمون حلقة على مدى يمكنك تعيين متغير يسمى oldEntry على سبيل المثال (تهيئة لاغية) واستخدام ذلك في بالطريقة التي تريدها.
Map.Entry<Integer,String> oldEntry = null;
for (Map.Entry<Integer, String> entry: collection.entrySet()) {
if (oldEntry != null) doStuff(oldEntry, newEntry);
oldEntry = entry;
}
لا تنتمي إلى StackOverflow