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