使用Hashset 去重复

例一,List<String> 去重复

public class main {
public static void main(String[] args) { List<String> list = new ArrayList<>();
list.add("李菊福");
list.add("狗娃");
list.add("尼古拉斯赵四");
list.add("尼古拉斯赵四");
list.add("尼古拉斯赵四");
list.add("刘能");
list.add("刘能");
list.add("阿里郎");
System.out.println("排序前");
for (String string : list) {
System.out.println(string);
}
//排序
HashSet h = new HashSet(list);
list.clear();
list.addAll(h);
System.out.println("排序后");
for (String string : list) {
System.out.println(string);
}
} }

打印结果

-----去重前----
李菊福
狗娃
尼古拉斯赵四
尼古拉斯赵四
尼古拉斯赵四
刘能
刘能
阿里郎 -------去重后--------
狗娃
李菊福
阿里郎
尼古拉斯赵四
刘能

例二,List<Map<String,String>> 去重复

	 public static void main(String[] args) {

	        List<Map<String,String>> list = new ArrayList();
Map<String,String> map1 = new HashMap<String, String>();
Map<String,String> map2 = new HashMap<String, String>();
Map<String,String> map3 = new HashMap<String, String>();
Map<String,String> map4 = new HashMap<String, String>();
Map<String,String> map5 = new HashMap<String, String>();
Map<String,String> map6 = new HashMap<String, String>();
Map<String,String> map7 = new HashMap<String, String>(); map1.put("custName","shoes");
map1.put("productId","1");
map2.put("custName","shoes");
map2.put("productId","2");
map3.put("custName","hat");
map3.put("productId","3");
map4.put("custName","hat");
map4.put("productId","3");
map5.put("custName","shoes");
map5.put("productId","2");
map6.put("custName","clothes");
map6.put("productId","2");
map7.put("custName","clothesSample");
map7.put("productId","2"); list.add(map1);
list.add(map2);
list.add(map3);
list.add(map4);
list.add(map5);
list.add(map6);
list.add(map7); System.out.println("去重前");
for (Map<String,String> map : list) {
System.out.println(map.get("custName")+ " : " +map.get("productId"));
}
//去重
HashSet h = new HashSet(list);
list.clear();
list.addAll(h); System.out.println("-----");
System.out.println("去重后");
for (Map<String,String> map : list) {
System.out.println(map.get("custName")+ " : " +map.get("productId"));
} } 

打印

去重前
shoes : 1
shoes : 2
hat : 3
hat : 3
shoes : 2
clothes : 2
clothesSample : 2
-----
去重后
clothes : 2
shoes : 2
clothesSample : 2
shoes : 1
hat : 3

  

HashSet去除List重复元素的更多相关文章

  1. java去除数组重复元素的方法

    转载自:https://blog.csdn.net/Solar24/article/details/78672500 import java.util.ArrayList; import java.u ...

  2. JS Jquery去除数组重复元素

    js jquery去除数组中的重复元素 第一种:$.unique() 第二种: for(var i = 0,len = totalArray_line.length;i < len;i++) { ...

  3. python 去除列表重复元素方法汇总

    1.使用set集合,虽然去除掉重复元素,但是顺序改变了 耗时约4.0*10^-5 s A = ['a','b','X','a','b','G'] B = list(set(A)) print(A)[' ...

  4. java: Set类及子类:TreeSet有序子类,HashSet无序子类:重复元素

    Set类及子类: TreeSet有序子类: HashSet无序(散列)子类 HashSet子类的内容是没有顺序的,单个元素也不会重复的(对象除外). Set<String> allSet ...

  5. LeetCode47, 全排列进阶,如果有重复元素怎么办?

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是LeetCode第28篇,依然是全排列的问题. 如果对全排列不熟悉或者是最近关注的同学可以看一下上一篇文章: LeetCode46 回 ...

  6. leetcode——217. 存在重复元素

    leetcode--217. 存在重复元素 题目描述:给定一个整数数组,判断是否存在重复元素. 如果存在一值在数组中出现至少两次,函数返回 true .如果数组中每个元素都不相同,则返回 false ...

  7. ArrayList去除重复元素(多种方法实现)

    package other; import java.util.ArrayList; import java.util.HashSet; public class test4 { public sta ...

  8. 集合框架-ArrayList练习(去除ArrayList集合中的重复元素)

    1 package cn.itcast.p3.arraylist.test; 2 3 import java.util.ArrayList; 4 import java.util.Iterator; ...

  9. Python列表去除重复元素

    主要尝试了3种列表去除重复元素 #2.去除列表中的重复元素 #set方法 def removeDuplicates_set(nums): l2 = list(set(l1)) #用l1的顺序排序l2 ...

随机推荐

  1. Linux 系统设置sh文件开机自启动

    工作中有一个linux下的服务需要启动,但是机器总是断电,导致需要反复启动,找了一下开机自启动的方法,解决了这个问题.Linux设置开机自启动非常简单,只要找到rc.local文件,将你需要自启动的文 ...

  2. spring cron表达式(定时器)

    转: spring cron表达式(定时器) 写定时器时用到,记录一下: Cron表达式是一个字符串,字符串以5或6个空格隔开,分开工6或7个域,每一个域代表一个含义,Cron有如下两种语法 格式:  ...

  3. 第二十九节,目标检测算法之R-CNN算法详解

    Girshick, Ross, et al. “Rich feature hierarchies for accurate object detection and semantic segmenta ...

  4. jquery 获取$("#id").text()里面的值 需要进行去空格去换行符操作

    Jquery:$("#accuracy").val($("#accuracy").val().replace(/\ +/g,""));//去 ...

  5. PHP实现异步处理

    resource fsockopen ( string $hostname [, int $port = -1 [, int &$errno [, string &$errstr [, ...

  6. Altium Designer 18 ------ 常用功能记录

    PCB选中某条线路,按一下 Tab 键选中整条线路 PCB中,按 “N” 键选择隐藏或显示某个网络 配置Altium Designer 18 教程所需的捕捉网格的值: G显示Snap Grid菜单,您 ...

  7. 使用 windows 下的 secureCRT 软件的 通过 sftp 上传和下载文件到远端 linux 设备

    secureCRT 按下ALT+P就开启新的会话进行ftp操作. 输入:help命令,显示该FTP提供所有的命令 pwd:  查询linux主机所在目录(也就是远程主机目录) lpwd: 查询本地目录 ...

  8. Java多线程常用面试题(含答案,精心总结整理)

    现在有T1.T2.T3三个线程,你怎样保证T2在T1执行完后执行,T3在T2执行完后执行? 目的是检测你对”join”方法是否熟悉.这个多线程问题比较简单,可以用join方法实现. 核心: threa ...

  9. golang 热升级

    需求场景 干净利落地升级正在运行的agent程序.适用于Devops团队. 目标: 不关闭现有连接:例如我们不希望关掉已部署的运行中的程序.但又想不受限制地随时升级服务. 新的进程要能够启动并替换掉旧 ...

  10. 2018牛客网暑期ACM多校训练营(第二场)J Farm(树状数组)

    题意 n*m的农场有若干种不同种类作物,如果作物接受了不同种类的肥料就会枯萎.现在进行t次施肥,每次对一个矩形区域施某种类的肥料.问最后枯萎的作物是多少. 分析 作者:xseventh链接:https ...