方法一 循环元素删除

[c-sharp] view
plain
copy

  1. public static void removeDuplicate(List list) {
  2. for ( int i = 0 ; i < list.size() - 1 ; i ++ ) {
  3. for ( int j = list.size() - 1 ; j > i; j -- ) {
  4. if (list.get(j).equals(list.get(i))) {
  5. list.remove(j);
  6. }
  7. }
  8. }
  9. System.out.println(list);

方法二  // 删除ArrayList中反复元素

[c-sharp] view
plain
copy

  1. public static void removeDuplicate(List list) {
  2. for ( int i = 0 ; i < list.size() - 1 ; i ++ ) {
  3. for ( int j = list.size() - 1 ; j > i; j -- ) {
  4. if (list.get(j).equals(list.get(i))) {
  5. list.remove(j);
  6. }
  7. }
  8. }
  9. System.out.println(list);

方法三 删除ArrayList中反复元素,保持顺序

[c-sharp] view
plain
copy

  1. // 删除ArrayList中反复元素,保持顺序
  2. public static void removeDuplicateWithOrder(List list) {
  3. Set set = new HashSet();
  4. List newList = new ArrayList();
  5. for (Iterator iter = list.iterator(); iter.hasNext();) {
  6. Object element = iter.next();
  7. if (set.add(element))
  8. newList.add(element);
  9. }
  10. list.clear();
  11. list.addAll(newList);
  12. System.out.println( " remove duplicate " + list);
  13. }

方法四  linq

[c-sharp] view
plain
copy

  1. IList<string> U_list= new List<string>();
  2. IList<string> Update_list= new List<string>();
  3. var ulist = (from li in U_list
  4. select li).Distinct();
  5. foreach (var d in ulist)
  6. {
  7. Update_list.Add(d);
  8. }

其它情况:

去除List列表中反复值(3种解决方法)

public static void main(String[] args) {
String[] ar = { "dd", "c", "dd", "ff", "b", "e", "e" };
ArrayList list = new ArrayList();
for (int i = 0; i < ar.length; i++) {
list.add(ar[i]);
}
System.out.println("执行前:");
for (int i = 0; i < list.size(); i++) {
System.out.print(list.get(i) + " ");
}
System.out.println();
/* 第一种方法 */
/**
* set方法去除list中反复的数据 set中插入反复的值仅仅保留一个
*/
HashSet h = new HashSet(list);
list.clear();
list.addAll(h);
/* 第一种方法 */ /* 另外一种方法 */
/**
* 第二中方法去除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);
/* 另外一种方法 */ /* 第三种方法 */
/**
* 普通的方法去除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("执行后:");
for (int i = 0; i < list.size(); i++) {
System.out.print(list.get(i) + " ");
}
}

去除List列表中反复值(稍作调整,也适合于List&lt;T&gt; 和 List&lt;?&gt;)的更多相关文章

  1. selenium+java:获取列表中的值

    selenium+java:获取列表中的值 (2011-08-23 17:14:48) 标签: 杂谈 分类: selenium 初步研究利用java+testNg框架下写selenium测试用例,今天 ...

  2. Python访问列表中的值

    Python访问列表中的值: 列表中可以包含所有数据类型: # 列表中可以存放 数字数据类型数据 # int 型数据 lst = [1,2,3] print(lst) # [1, 2, 3] # fl ...

  3. c# json转换成dynamic对象,然后在dynamic对象中动态获取指定字符串列表中的值

    using Newtonsoft.Json;using System;using System.Collections.Generic;using System.Linq;using System.T ...

  4. erlang取列表中某个值的位置

    有个需求,比如在一个列表中,取出一个元素的位置,如果出现重复都取出.例如:List = [2,3,10,324,88,29,12],可以求大于某个值的位置,也可以取某个值的位置. 废话少说,直接上代码 ...

  5. Python3基础 sort 将一个列表中的值升序排列

    镇场诗:---大梦谁觉,水月中建博客.百千磨难,才知世事无常.---今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ ...

  6. python列表中的值转换为字符串,及列表里的所有值拼接成一个字符串 的方法

    后记: ls3='%'.join(ls2) 会把%加入拼接成的字符里面,同理,加入其它字符也一样,''空就是什么都不加,如上图 最后输出 1%我%22

  7. 使用easyui实现双击列表中某个值直接对其进行修改

    var editCell = undefined; $('#dg').datagrid({ url:'DwzServlet', iconCls:'icon icon-list' , queryPara ...

  8. Java 去除List列表中的重复项

    /** * Remove list duplicate item * * @param srcList * @return */ private static ArrayList<Resolve ...

  9. python 访问列表中的值

    #!/usr/bin/python list1 = ['physics', 'chemistry', 1997, 2000] list2 = [1, 2, 3, 4, 5, 6, 7 ] print ...

随机推荐

  1. 搭建Hadoop集群 (一)

    上面讲了如何搭建Hadoop的Standalone和Pseudo-Distributed Mode(搭建单节点Hadoop应用环境), 现在我们来搭建一个Fully-Distributed Mode的 ...

  2. Linux流量监控工具使用总结 - iftop

    在类Unix系统中可以使用top查看系统资源.进程.内存占用等信息.查看网络状态可以使用netstat.nmap等工具.若要查看实时的网络流量,监控TCP/IP连接等,则可以使用iftop. 一.if ...

  3. Android Studio 代码混淆

    新建一个项目,Android Studio默认关闭代码混淆开关,在build.gradle文件中,如下图所示的minifyEnabled 开关,因此如果需要混淆代码,需将false改为true,然后在 ...

  4. VS2010/MFC对话框:消息对话框

    消息对话框 我们在使用Windows系统的过程中经常会见到消息对话框,提示我们有异常发生或提出询问等.因为在软件开发中经常用到消息对话框,所以MFC提供了两个函数可以直接生成指定风格的消息对话框,而不 ...

  5. MySQL性能调优的方法

    第一种方法 1.选取最适用的字段属性 MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快.因此,在创建表的时候,为了获得更好的 性能,我们可以将表中字 ...

  6. HTML5API___geolocation

    地理位置查询:geolocation window.navigator.geolocation 该对象下总共有3个方法 Geolocation {getCurrentPosition: functio ...

  7. 汉字转拼音的vc++程序源代码

    #include "StdAfx.h" #include "MyChiToLetter.h" // Download by http://www.codefan ...

  8. c#软件工程师笔试题

    近来有打算重新找工作,还没提离职,投了几家公司简历,其中一家比较中意的公司给发了面试题,其实,好像是好几天前的事了,主要是Gmail邮箱很少用,所以一直都没去看,今天看到题目给解了. 题目如下: 题目 ...

  9. iOS 用UISearchDisplayController实现查找功能

    UISearchDisplayController是iOS中用于处理搜索功能的控制器,此控制器需要和UISearchBar结合使用 示例代码如下: // // WKRootViewController ...

  10. Spring的事务属性

    1.事务Transactional下的属性 @Transactional( readOnly = false, // 读写事务,只读事务 timeout = -1, // 事务的超时时间不限制 //n ...