您的位置:首页 > 编程语言 > Java开发

java中List和Map的去重

2014-05-08 10:46 316 查看
一:List去重

问题:有List A和B,A和B中元素都是可保证没重复的,现要合并A、B得到新的List C,要求C中不能有重复元素

import java.util.ArrayList;
import java.util.List;

public class ArrayListTest {
public static void main(String[] args) {
List<String> A=new ArrayList<String>();
A.add("a");
A.add("b");
A.add("c");
System.out.println(A.toString());

List<String> B=new ArrayList<String>();
B.add("b");
B.add("c");
B.add("d");
B.add("e");
B.add("f");
System.out.println(B.toString());

//去重
A.removeAll(B);
A.addAll(B);
System.out.println(A.toString());
}
}

二:为value有重复的HashMap去重

import java.util.HashMap;
import java.util.Map;

public class HashMapTest {
public static void main(String[] args) {
//给出一个value有重复元素的map
Map<Integer,String> map = new HashMap<Integer,String>();
map.put(1, "aaa");
map.put(2, "aaa");
map.put(3, "bbb");
map.put(4, "ccc");
System.out.println(map.toString());

//创建一个新的map2
Map<Integer,String> map2=new HashMap<Integer,String>();
for(Integer key:map.keySet()){
if(!map2.containsValue(map.get(key))){
map2.put(key, map.get(key));
}
}
System.out.println(map2.toString());
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Map去重