比较java中的两个不同列表对象

比较java中的两个不同列表对象,java,list,arraylist,compare,Java,List,Arraylist,Compare,我有两个不同的List对象,我想根据这两个对象的公共属性得到两个对象的合并列表,新列表应该只包含公共对象。两个对象的大小也各不相同。 我的第一个目标: ObjectA(distance,remainingtime,msg1_received_time) ObjectB(remainingtime,msg1_decoding_time,phase) 我想要一个列表,其中的值只有两种情况下的剩余时间是相同的。有人可以指导我吗?如果没有任何tieme约束,您可以始终迭代一个列表的元素,然后检查另一个

我有两个不同的
List
对象,我想根据这两个对象的公共属性得到两个对象的合并列表,新列表应该只包含公共对象。两个对象的大小也各不相同。 我的第一个目标:

ObjectA(distance,remainingtime,msg1_received_time)
ObjectB(remainingtime,msg1_decoding_time,phase)

我想要一个
列表
,其中的值只有两种情况下的剩余时间是相同的。有人可以指导我吗?

如果没有任何tieme约束,您可以始终迭代一个列表的元素,然后检查另一个列表的元素上是否存在这些元素。O(n^2)量级的算法:


如果您正在寻找更高效的方法,那么可以尝试使用
Set
,这将使访问速度更快。

如果没有任何tieme约束,您可以始终迭代一个列表的元素,然后检查另一个列表的元素上是否存在这些元素。O(n^2)量级的算法:


如果您正在寻找更有效的方法,那么可以尝试使用
Set
,这将使访问速度更快。

找到最长的列表,在此列表上循环并使用contains。找到最长的列表,在此列表上循环并使用contains。
for(ObjectA el : listOfA)
{
    for(ObjectB in : listOfB)
    {
        if(el.remainingtime == in.remainingtime)
        {
            resultList.add(el);
            break;
        }
    }
}