ฉันมีสองรายการที่มีวัตถุต่างกัน
List<Object1> list1;
List<Object2> list2;
ฉันต้องการตรวจสอบว่าองค์ประกอบจาก list1 มีอยู่ใน list2 หรือไม่โดยยึดตามแอตทริบิวต์เฉพาะ (Object1 และ Object2 มี (ในกลุ่มอื่น ๆ ) หนึ่งแอตทริบิวต์ร่วมกัน (ที่มีประเภท Long) ชื่อ attributeSame)
ตอนนี้ฉันทำแบบนี้:
boolean found = false;
for(Object1 object1 : list1){
for(Object2 object2: list2){
if(object1.getAttributeSame() == object2.getAttributeSame()){
found = true;
//also do something
}
}
if(!found){
//do something
}
found = false;
}
แต่ฉันคิดว่ามีวิธีที่ดีกว่าและเร็วกว่านี้ :) มีใครเสนอได้ไหม
ขอบคุณ!