0
我有對象列表(名稱A),A有屬性B和C.我需要找到列表中的對象B屬性相等與另一個對象的C屬性。例如:好的方法來過濾列表中的對象其中兩個對象的屬性等於B屬性
def objectList = [A1,A2,A3,A4,A5,A6,A7,A8];
if A1.B == A2.C then return A1,A2;
任何好的方法來做到這一點?
我有對象列表(名稱A),A有屬性B和C.我需要找到列表中的對象B屬性相等與另一個對象的C屬性。例如:好的方法來過濾列表中的對象其中兩個對象的屬性等於B屬性
def objectList = [A1,A2,A3,A4,A5,A6,A7,A8];
if A1.B == A2.C then return A1,A2;
任何好的方法來做到這一點?
不知道你是否希望你的結果壓扁與否,反正這裏的返回元組的列表的解決方案:您的回覆
def result = list.inject([]) {acc,a1->
list.each {a2->
if (!a1.is(a2) && a1.b == a2.c) {
acc << [a1,a2]
}
}
acc
}
嗨drorb,謝謝。也許我沒有清楚地描述我的情況。我希望比較一個對象的A屬性是否等於另一個對象的B屬性。如果是,則返回這兩個對象。 – Joy
我認爲你應該更新這個問題,並提供一個比較所有列表對象後所期望的例子 –
感謝您的建議。我已經更新了這個問題,希望能夠讓問題更清楚。 – Joy