java去掉List中的重复值代码
1. list中为字符串的情况,代码如下:
public static void main(String[] args) {
List<String> li = new ArrayList<String>();
li.add("AAAA");
li.add("AAAA");
li.add("AAAA");
li.add("BBBB");
li.add("BBBB");
li.add("CCCC");
li.add("CCCC");
li.add("CCCC");
li.add("CCCC");
ArrayList<String> result = new ArrayList<String>();
for (String s : li) {
if (Collections.frequency(result, s) < 1)
result.add(s);
}
for (int i = 0; i < result.size(); i++) {
System.out.println(result.get(i));
}
}
输出结果为:
AAAA
BBBB
CCCC
2.如果list存放的是对象,可以借助Map来处理,因为Map中key值不能够重复的特点.
/***
* 去除List<PartsInfoDTO>列表中的重复对象 ~!!
* @param list
* @return
*/
public static List<PartsInfoDTO> removeDuplicate(List<PartsInfoDTO> list) {
// Set<PartsInfoDTO> set = new HashSet<PartsInfoDTO>();
List<PartsInfoDTO> newList = new ArrayList<PartsInfoDTO>(); Map map = new HashMap();
for (Iterator<PartsInfoDTO> iter = list.iterator(); iter.hasNext();) {
PartsInfoDTO element = (PartsInfoDTO) iter.next();
map.put(element.getId(), element); //如果id重复会覆盖.
} Iterator it = map.keySet().iterator();
while (it.hasNext()) {
Integer key = (Integer) it.next();
newList.add((PartsInfoDTO) map.get(key));
} return newList;
}
另外补充下Map转换成List的方法:
/**
* @param args
*/
public static void main(String[] args) { Map map = new HashMap();
map.put("a", "a1");
map.put("b", "b1");
map.put("c", "c1"); List listKey = new ArrayList();
List listValue = new ArrayList();
Iterator it = map.keySet().iterator();
while (it.hasNext()) {
String key = it.next().toString();
listKey.add(key);
listValue.add(map.get(key));
}
System.out.println("Convert Finished !"); for (int i = 0; i < listKey.size(); i++) {
System.out.print("Key :" + listKey.get(i));
System.out.println(" Value :" + listValue.get(i));
}
}
java去掉List中的重复值代码的更多相关文章
- 三种java 去掉字符串中的重复字符函数
三种java 去掉字符串中的重复字符函数 public static void main(string[] args) { system.out.println(removerepeatedchar( ...
- Java 去掉字符串中的重复数据
有一组字符串比如 北京,北京,上海,上海,上海,武汉-------->要得到 北京,上海,武汉 怎么去掉里面重复的字符串? function DelRepetStr(String ...
- JavaScript去除数组中的重复值
用原型函数(prototype)可以定义一些很方便的自定义函数,实现各种自定义功能. Javascript 中的原型函数(prototype)的工作原理,在 javascript 中每次声明新函数的过 ...
- C#中如何查找Dictionary中的重复值
简介 在这篇帮助文档中,我将向你展示如何实现c#里字典中重复值的查找.你知道的对于一个老鸟来说,这是非常简单的代码.但是尽管如此,这也是一篇对c#初学者非常有用的帮助文档. 背景 多数程序员对小型数据 ...
- Ex 2_14 去掉数组中所有重复的元素..._第二次作业
首先利用归并排序算法对数组进行排序,时间复杂度为O(nlogn),接着再利用时间复杂度为O(n) 的去重复算法去掉数组中的重复元素.总的时间复杂度为O(nlogn). (这题应该用分支算法解决)以下为 ...
- 去除List集合中的重复值(四种好用的方法)
最近项目中需要对list集合中的重复值进行处理,大部分是采用两种方法,一种是用遍历list集合判断后赋给另一个list集合,一种是用赋给set集合再返回给list集合. 但是赋给set集合后,由于se ...
- 去除List集合中的重复值(四种好用的方法)(基本数据类型可用)
最近项目中需要对list集合中的重复值进行处理,大部分是采用两种方法,一种是用遍历list集合判断后赋给另一个list集合,一种是用赋给set集合再返回给list集合. 但是赋给set集合后,由于se ...
- 如何使用 Java 删除 ArrayList 中的重复元素
如何使用 Java 删除 ArrayList 中的重复元素 (How to Remove Duplicates from ArrayList in Java) Given an ArrayList w ...
- Java删除ArrayList中的重复元素
Java删除ArrayList中的重复元素的2种方法 ArrayList是Java中最常用的集合类型之一.它允许灵活添加多个null元素,重复的元素,并保持元素的插入顺序.在编码时我们经常会遇到那种必 ...
随机推荐
- 和阿文一起学H5——H5工具、素材
字体: 一般的H5工具都会提供一部分字体,如果提供的字体中没有自己想用的字体,可以在PPT或PS中进行加工,然后另存为图片,再导入到H5工具中去. 字全生成器: 1.http://www.diyizi ...
- mysql绿色版在windows系统中的启动
mysql绿色版在windows系统中的启动 1.下载mysql免安装版 例如:mysql-5.7.11-winx64 2.修改配置文件,my-default.ini名称改为:my.ini,文件里面的 ...
- PHP学习笔记 - 进阶篇(5)
PHP学习笔记 - 进阶篇(5) 正则表达式 什么叫正则表达式 正则表达式是对字符串进行操作的一种逻辑公式,就是用一些特定的字符组合成一个规则字符串,称之为正则匹配模式. $p = '/apple/' ...
- JAVA:避免重复的创建对象
在实际开发中,重复使用同一个对象要比每次需要的时候就创建一个对象要好的多: 作为一个比较极端的反面例子,看下面这个语句: String s = new String("haha") ...
- [zz]pg_hba.conf 一种安全地配置策略
PostgreSQL默认只监听本地端口,用netstat -tuln只会看到“tcp 127.0.0.1:5432 LISTEN”.修改postgresql.conf中的listen_address= ...
- PERL 脚本
PERL: Practical Extraction and Report Language 参考文档 1.Perl 5 version 24.0 documentation
- C语言 SDK编程之通用控件的使用--ListView
一.ListView控件属于通用控件CONTROL中的一种,在SDK编程方式时要使用通用控件 必须包含comctl32.dll,所以代码中要有头文件: commctrl.h 导入库:comctl32. ...
- 安装WP8 SDK出现“根据当前系统时钟或签名文件中的时间戳验证时要求的证书不在有效期内”的解决办法
今天重装系统了,在安装WP8 SDK时,安装了一小部分就提示“根据当前系统时钟或签名文件中的时间戳验证时要求的证书不在有效期内”的错误. 根据错误提示,貌似跟时间有关,百度了下.果真.把系统时间往前调 ...
- TCP/IP:链路层
链路层主要目的: 1. 为IP模块发送和接收IP数据报. 2. 为ARP模块发送ARP请求和接收ARP应答. 3. 为RARP发送RARP请求和接收RARP应 ...
- JS 正则 获取URL参数
function getQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&] ...