`

剔除List中的重复值

    博客分类:
  • Java
阅读更多
本文转自:http://yangfuchao418.iteye.com/blog/777787

方法一 :循环元素删除
//  删除ArrayList中重复元素 
 public static void removeDuplicate(List list){
    for(int i=0 ;i<list.size()-1; i++){
     for(int j=list.size()-1; j>i; j--){
       if(list.get(j).equals(list.get(i))){
         list.remove(j);
       } 
     } 
   } 
   System.out.println(list);
 }

方法二:通过HashSet 剔除
//删除ArrayList中重复元素 
 public static void removeDuplicate(List list){
     HashSet h = new HashSet(list);
     list.clear();
     list.addAll(h);
     System.out.println(list);
 } 

方法三 : 删除ArrayList中重复元素,保持顺序
//删除ArrayList中重复元素,保持顺序    
	 public static void removeDuplicateWithOrder(List list){
	     Set set = new HashSet();   
	     List newList = new ArrayList();   
	     for(Iterator iter=list.iterator();iter.hasNext();){   
	        Object element = iter.next();   
	        if(set.add(element)){
	        	newList.add(element);
	        }
	     }    
	     list.clear();   
	     list.addAll(newList);   
	     System.out.println( " remove duplicate "   +  list);   
	 } 
 

//向list加入元素,保证不含有重复值:
public void del(){
	List<String> list = new ArrayList<String>(); 
	String[] arr = strIdx.split("\\|");
	for(String str : arr){
		if(str==null || "".equals(str)){
			log.info("过滤掉一个!");
			continue;
		}
		if(!list.contains(str)){
			list.add(str);
		}
	}
	return list;
}
分享到:
评论

相关推荐

    实际控制人重复值剔除_实际控制人处理_重复控制_

    "实际控制人重复值剔除"是这个过程中的一个具体案例,主要针对的是金融或企业数据中的特定问题。在这个场景下,"实际控制人"指的是拥有企业实质性控制权的个人或机构,他们可能通过直接或间接的方式持有公司的股份。...

    Java中对List去重 Stream去重的解决方法

    List去重是Java中的一种常见操作,对于List中的重复元素进行去重,从而使得List中的元素变得独一无二。 Java中提供了多种方法来实现List去重,下面我们将对其中的一些方法进行介绍。 使用HashSet去重 HashSet是一...

    Java中List集合对象去重及按属性去重的8种方法

    在Java编程中,当我们处理包含重复元素的List时,有时需要去除其中的重复项。以下文章将详细介绍8种针对List集合对象去重的方法,包括基于对象整体以及按特定属性进行去重。 ### 一、对象整体去重 #### 1. 使用Set...

    y.rar_约瑟夫环c++

    这里的关键在于如何有效地找到并删除报数达到特定值的节点,以及如何在剔除节点后保持链表的连续性。 以下是一个简单的实现思路: 1. 创建一个链表,链表节点包含两个部分:数值(代表人的编号)和指针(指向下一个...

    js代码-js插入新列表时剔除掉全列表已有的项目

    总结,当需要在JavaScript中插入新列表时剔除掉全列表已有的项目,可以采用多种策略,如使用`indexOf()`/`includes()`检查、`Set`数据结构或`filter()`方法。选择哪种方法取决于具体需求,包括性能、数据规模和是否...

    约瑟夫环C++实现版

    4. **剔除操作**:当计数器达到预设的剔除值时,从链表中删除该节点,并更新计数器,使其指向下一个节点。 5. **循环处理**:重复剔除操作,直到链表中只剩下一个节点,即“幸存者”。 6. **输出结果**:输出...

    C++中STL使用总结

    方法可以移除list中连续的重复元素。 6. 查找元素:使用lst.find(value);查找list中是否存在指定的元素。 七、bitset位集合容器 Bitset是一种固定大小的位集合,它提供了方便的位操作。 1. 创建bitset对象:...

    圆桌问题的一种解决方案

    这个程序首先读取用户输入的n, s和m值,然后创建一个大小为n的顺序表并将1到n的数字填充进去,最后调用`josephus_seq`函数按照Josephus规则进行剔除并打印结果。 当n和m较大时,手动解决Josephus问题变得极其复杂,...

    C# 约瑟夫问题

    List&lt;int&gt; people = new List(); for (int i = 1; i ; i++) people.Add(i); int index = 0; while (people.Count &gt; 1) { index = (index + m - 1) % people.Count; people.RemoveAt(index); } int survivor = ...

    约瑟夫环源代码

    在循环进行的过程中,需要记录每次数到特定值的节点,即待删除的节点。 源代码可能包括以下步骤: 1. 初始化链表:创建链表并添加人数,每个人的节点代表一个位置。 2. 设置计数器:定义计数阈值,即每数到多少人...

    c++作业设计题实例下载

    约瑟夫环问题的基本设定是:n个人围成一个圈,从某个人开始按顺序报数,每报到特定数值(在这个例子中是3)的人会被剔除出圈,然后从下一个人继续报数,直到只剩下最后一个人为止。我们需要找出最后剩下的那个人的...

    云计算聚类挖掘算法在船舶海上信息平台中的应用.pdf

    通过Canopy算法实现的聚类过程,可以随机选择一个点作为聚类的起点,然后计算其他所有点与起点之间的距离,将距离小于T1的点划分到当前聚类中,并把距离不大于T2的点从数据集中剔除,这些点不再能够成为新的中心点,...

    约瑟夫环数据结构课程算法实现

    C++提供了丰富的数据结构和算法工具,包括STL中的容器(如list和vector)以及迭代器,可以用来轻松实现约瑟夫环。源代码可能包括以下几个部分: - 初始化数据结构(链表或数组) - 报数循环,每次报数后进行剔除操作...

    面试-Redis相关的配套资料

    1. 字符串(String):基本的数据类型,可以存储任何可序列化的值,如数字或字符串。 2. 哈希(Hash):用于存储键值对的集合,适合表示对象,如用户信息。 3. 列表(List):有序的元素集合,支持两端的插入和删除操作,...

    Python字典遍历操作实例小结

    如果需要去除遍历过程中可能出现的重复值,可以转换为集合(set),因为集合中的元素是唯一的: ```python dict = {'evaporation': '蒸发', 'carpenter': '木匠', 'millman': '木匠'} print('【包含重复】', list...

    hh.rar_M?n

    每数到第"N"个猴子时,这个猴子就会被剔除。这个过程持续进行,直到只剩下一只猴子,这只猴子就是所谓的"大王"。这个问题的核心在于理解如何计算在特定的数数规则下,哪只猴子会最后留下来。 解决这个问题的关键...

    数据结构专业课程设计方案报告约瑟夫环完整版.doc

    约瑟夫环(Josephus Problem)是数据结构领域中的一个经典问题,它源自一个假设的历史场景:人们按照一定的规则在环形队列中依次淘汰,直到只剩一人为止。这个问题可以用来考察数据结构和算法的设计与实现,特别是在...

    C++ STL 开发技术导引(第6章)

    22.20 剔除连续重复元素unique 324 22.21 元素反向reverse 325 22.22 反向复制reverse_copy 326 22.23 旋转rotate 327 22.24 旋转复制rotate_copy 329 22.25 随机抖动random_shuffle 330 22.26 随机...

    C++ STL开发技术导引(第5章)

    22.20 剔除连续重复元素unique 324 22.21 元素反向reverse 325 22.22 反向复制reverse_copy 326 22.23 旋转rotate 327 22.24 旋转复制rotate_copy 329 22.25 随机抖动random_shuffle 330 22.26 随机...

Global site tag (gtag.js) - Google Analytics