[英]Iterating through multiple lists
我從創建的DTO中有兩個單獨的列表,兩個列表包含不同的數據集,即在第一個列表中可以說有一些“ userloginname”和第二個最近更新的“ status”。 在第二個列表中,我具有所有狀態記錄的“ userloginname”(而不僅僅是第二個最近更新的狀態)。
如果要從List1中獲取每個“用戶登錄名”,並在一定條件下與list2中的每個“用戶登錄名”進行比較,是否可能?
謝謝
如果我誤會了,請糾正我,但是這樣的事情呢:
for (int i = 0 ; i < list1.size() ; i++) {
// Do something with "list1.get(i)" and "list2.get(i)"
}
這樣,您可以將list1
給定索引處的項目與list2
相應索引處的項目進行比較。 如果要比較每個list1
成員與每個其他list2
成員,則可以執行以下操作:
for (int i = 0 ; i < list1.size() ; i++)
for (int j = 0 ; j < list2.size() ; j++) {
// Do something with "list1.get(i)" and "list2.get(j)"
}
使用“ userloginname”作為鍵將列表之一轉換為地圖。
List<LastStatusRecord> lastStatusRecords = dto.getLastStatusRecords();
List<StatusRecord> statusRecords = dto.getStatusRecords();
Map<String, FullRecord> statusRecordIndex = new HashMap<String, StatusRecord>();
for (StatusRecord statusRecord : statusRecords) {
statusRecordIndex.put(statusRecord.getUserLoginName(), statusRecord);
}
for (LastStatusRecord lastStatusRecord : lastStatusRecords) {
StatusRecord statusRecord = statusRecordIndex.get(lastStatusRecord.getUserLoginName());
// place the condition here
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.