扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
删除ArrayList中重复数据保条数。public static void removeDuplicateWithOrder(List list) 。
成都创新互联公司服务项目包括白朗网站建设、白朗网站制作、白朗网页制作以及白朗网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,白朗网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到白朗省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
最好的办法是用Set,因为Set里面存放的数据是不重复的。如果你不想用Set,那还可以向下面这样处理。List list_tmp = new ArrayList(); //建立一个用于临时存放不重复list元素的List集合。
上面的是c#的写法,现在是通俗的写法,目的的防止java中没有对应方法 可以去掉的。
“可以利用Map的key不重复特性: 遍历List,遍历过程中将List中取出的值作为key保存到一个临时的Map中,Map的value可以自己随意设定。
你把o.equals(list)那句换成list.contains(o)试试。现在你的代码里o是个Object(其实是String),list是个List,根本不可能equal的 哦下面那个li.remove(o)也换成list.remove(o)___哦不对。。
在该方法中,我们使用HashSet来删除重复的元素。如你所知,HashSet不允许有重复的元素。我们使用HashSet的这个属性来删除已建 成的ArrayList中的重复元素。但是,这种方法有一个缺点。
实现思路:将list对象循环两次,拿外层数据和里面的数据对比,一样的删除外层(外层元素肯定比内存的靠前),如果一样的话,删除外层数据,这样最后输出外层数据的list,结果就能保证唯一性,并且保留了后面的元素。
最好的办法是用Set,因为Set里面存放的数据是不重复的。如果你不想用Set,那还可以向下面这样处理。List list_tmp = new ArrayList(); //建立一个用于临时存放不重复list元素的List集合。
补充楼下放在Set 中的思路。HashSet 判断两个对象相等的标准除了要求通过 equals() 方法比较返回 true 之外,还要求两个对象的 hashCode() 返回值相等。
最好的办法是用Set,因为Set里面存放的数据是不重复的。如果你不想用Set,那还可以向下面这样处理。List list_tmp = new ArrayList(); //建立一个用于临时存放不重复list元素的List集合。
可以利用SET里元素不重复的功能实现, 将字符串按照、分割成数组, 然后挨个放入SET中, 最后遍历SET 将里面每个元素组合成一个字符串 。String s[] = “人、药物、疾病、药物、疾病、人、药物、” 按照、分割。
下面是一个实例,首先生成一个列表list,然后找出重复元素。
java中,list是可以重复的,但是set就不能重复了。在java中,list成为列表,而set则是集合,集合中的元素是不可以重复的,但是列表中的是可以的,所以,list里面的元素是可以重复的。
一般会想到遍历字符串,去除重复的字符,这样时间复杂度是O(n),时间复杂度太高。
entity);} } 最终,将合并后的实体类从Map中取出来,组成一个新的List返回。ListYourEntityClass result = new ArrayList(resultMap.values());这样,就可以实现根据某个字段值合并实体类并累加相应字段的操作。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流