List集合去重-- Java
2014-03-15 11:27
309 查看
import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; /** * list集合工具类 * @author hq * */ public class ListUtil { /** * 去重 * @param list * @return */ public static List<?> filterRepeat4List(List<?> list){ List<Object> temp = new ArrayList<Object>(); Map<Object,Boolean> tempMap = new HashMap<Object,Boolean>(); for(Object obj : list){ if(tempMap.get(obj) == null){ tempMap.put(obj, true); temp.add(obj); } } return temp; } public static List<?> filterRepeat4List2(List<?> list){ Map<Object,Boolean> tempMap = new HashMap<Object,Boolean>(); Object obj = null; for(int i=0,len = list.size();i<len;i++){ obj = list.get(i); if(tempMap.get(obj) == null){ tempMap.put(obj, true); }else{ list.remove(obj); len--; i--; } } return list; } public static void main(String[] args) { List<String> list = new ArrayList<String>(); list.add("a"); list.add("ae"); list.add("ad"); list.add("af"); list.add("ab"); list.add("acc"); list.add("acb"); list.add("aca"); list.add("ac"); list.add("123"); list.add("123"); list.add("ac"); System.out.println(ListUtil.filterRepeat4List2(list)); } }list去重, 随意写的.后来又添加了一个去重规则接口 供自定义规则适用。均在以上基础上扩展的。没难度,请自行研究。
相关文章推荐
- java 集合(set、list、map、stack、queue)的用法
- java 集合 之 链表和线性表以及ArrayList的各方法的介绍及示例 及 ArrayList与LinkedList的区别分析 及 ArrayList与Array(数组)的区别
- 集合扩容问题(ArrList为例,常用集合扩容机制) -- JAVA 基础
- Java中的集合List、ArrayList、Vector、Stack(三)
- java中List对象集合的遍历方法
- Java基础之集合List-ArrayList、LinkedList、Vector的底层实现和区别
- java中集合List用法
- Java基础知识_集合(ArrayList & LinkedList & Vector & 迭代器)
- java使用lambda表达式对List集合进行操作(JDK1.8)
- Java中list集合为空或为null的区别
- java_集合体系之List体系总结、应用场景——07
- java中对List集合的常用操作
- java中数组快速转成List集合
- Java 完成水吧点饮品系统开发 集合List<E>的学习
- Java对List集合中的元素进行排序
- Java基础之集合框架(一)--Collection、List、LinkedList、HashSet
- java对list集合使用comparator方法比较排序
- java如何对List集合中的元素进行排序(请收藏)
- 黑马程序员——java基础拾遗之集合框架(一) List 和 Set
- 用Java集合中的Collections.sort方法对list排序的两种方法