栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

比较Java中的两个Collection

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

比较Java中的两个Collection

很难帮助,因为你没有告诉我们 如何 你想比较(大小相等)的集合。一些想法,希望能适合:

比较两个集合,如果它们包含相同顺序的相同对象

Iterator targetIt = target.iterator();for (Object obj:source)  if (!obj.equals(targetIt.next()))    // compare result -> false

比较两个集合(如果它们以任意顺序包含相同的对象)

for (Object obj:source)  if (target.contains(obj))    // compare result -> false

在其他集合中查找已更改的元素

Iterator targetIt = target.iterator();for (Object obj:source)  if (!obj.equals(targetIt.next())    // Element has changed

根据您的评论,此算法可以做到。它收集所有已更新的汽车。如果方法结果为空列表,则两个集合均包含相同顺序的相等条目。该算法 依赖
于正确实施

equals()
Car
类型!

public List<Car> findUpdatedCars(Collection<Car> oldCars, Collection<Car> newCars)  List<Car> updatedCars = new ArrayList<Car>();  Iterator oldIt = oldCars.iterator();  for (Car newCar:newCars) {    if (!newCar.equals(oldIt.next()) {      updatedCars.add(newCar);    }  }  return updatedCars;}


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/497996.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号