Erlo

检测和剔除List的重复项

时间:2020-10-18   阅读:9次   来源:博客园
页面报错
点赞

  List A;

  因为List列表通常允许重复的元素,并不是每个List都是自己写的方法生成,可以自己设定返回类型避免重复值,用第三方不可避免担心返回重复项导致算法效率的问题。

  之前因为要做数据处理,只需要处理A中的每个值一次,遇到相同值时无论是写判断语句还是直接执行都会产生时间损耗,而且预计到实际会产生大量的重复值列表,所以做了一下处理

  HashSet B = new HashSet(A);

  利用Set类型的列表唯一性,自动剔除A中的重复项,若再比较A与B的长度则可以判定A中是否有重复项:

  boolean rs = B.size()

 

注:

  之前有用过很傻的算法,也记录下来,虽然可行可惜效率和优化性完全不够

一、

  List B;

  for(Object object : A){

  if(!B.contains(object ))

    B.add(object);

  }

二、

  Set B;

  for(Object object : A){

    B.add(object);

  }

提交留言

评论留言

还没有评论留言,赶紧来抢楼吧~~

吐槽小黑屋()

* 这里是“吐槽小黑屋”,所有人可看,只保留当天信息。

  • Erlo吐槽

    Erlo.vip2020-10-22 00:46:57Hello、欢迎使用吐槽小黑屋,这就是个吐槽的地方。
  • 返回顶部