如何删除list里面的重复字段
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何删除list里面的重复字段相关的知识,希望对你有一定的参考价值。
ArrayList repList = new ArrayList();
String tempRepPart = prpLrepairFeeDto.getPartName();
if (!repList.contains( tempRepPart))
repList.add(tempRepPart);
System.out.println(repList);
输出结果是:
[电工项目]
[电工项目]
[电工项目]
[电工项目]
[拆装项目]
我想实现的是,如果删除list里面的重复项,最后想要的输出结果是:
[电工项目]
[拆装项目]
HashMap<String, Integer> hs = new HashMap<String, Integer>();
String strs = "";
for (String string : repList)
if(hs.get(string) == null)
strs += ","+string;
System.out.println(strs);
如果要取一个一个值的话就split(",")获得数组就行了本回答被提问者采纳 参考技术B 测试数据:
List<string> li1 = new List<string> "8", "8", "9", "9" ,"0","9";
List<string> li2 = new List<string> "张三", "张三", "李四", "张三", "王五", "李四" ;
List<string> li3 = new List<string> "A", "A", "C", "A", "C", "D" ;
List<string> li4 = new List<string> "12", "18", "19", "19", "10", "19" ;
方法一:
HashSet<string> hs = new HashSet<string>(li1); //此时已经去掉重复的数据保存在hashset中
方法二:
for (int i = 0; i < li2.Count; i++) //外循环是循环的次数
for (int j = li2.Count - 1 ; j > i; j--) //内循环是 外循环一次比较的次数
if (li2[i] == li2[j])
li2.RemoveAt(j);
方法三:
//把相同的用null代替。
for (int i = 0; i < li3.Count; i++)
for (int j = 0; j < li3.Count; j++)
if (i == j) continue;
if (li3[i] == li3[j])
li3[j] = "null";
方法四:
//这方法跟上面的一样,只是变了逻辑
for (int i = 0; i < li4.Count - 1; i++)
for (int j = 0; j < li4.Count ; j++)
if (i != j)
if (li4[i] == li4[j])
li4[j] = "null";
参考技术C 用HashSet吧
HashSet<String> set = new HashSet<repList>;
repList.clear();
repList.addAll(set);
请写出一段python代码实现删除list里面的重复元素?
l1 = [‘b‘,‘c‘,‘d‘,‘c‘,‘a‘,‘a‘]
l2 = list(set(l1))
print(l2)
以上是关于如何删除list里面的重复字段的主要内容,如果未能解决你的问题,请参考以下文章