一、Java中String、list和set的相互转化
1、list转string
String str= String.join("','", list);
2、list转set
Set<String> set = new HashSet<>(skuList);
3、set转list、
List<String> list = new ArrayList<>(set);
二、Java中多个集合的交集,并集和差集
1、交集
java中交集使用 A.retainAll(B) ,交集的结果在集合A中。
1 @Test
2 public void testJJSet() {
3 Set<String> set1 = new HashSet<>();
4 Set<String> set2 = new HashSet<>();
5
6 set1.add("a");
7 set1.add("b");
8 set1.add("c");
9
10 set2.add("c");
11 set2.add("d");
12 set2.add("e");
13
14 //交集
15 set1.retainAll(set2);
16 System.out.println("交集是 " + set1); //交集是 [c]
17
18 }
2、并集
并集使用addAll,A.addAll(B) 因为set本身就去重,所有直接全部添加到一个集合中取并集。
1 @Test
2 public void testAddAllSet() {
3 Set<String> set1 = new HashSet<>();
4 Set<String> set2 = new HashSet<>();
5
6 set1.add("a");
7 set1.add("b");
8 set1.add("c");
9
10 set2.add("c");
11 set2.add("d");
12 set2.add("e");
13
14 //并集
15 set1.addAll(set2);
16 System.out.println("并集是 " + set1);
17
18 //并集是 [a,b,c,d,e]
19 }
2、差集
差集使用removeAll方法,去掉一集合中包含的另一个集合的值。A.removeAll(B)。
1 @Test
2 public void testCJSet() {
3 Set<String> set1 = new HashSet<>();
4 Set<String> set2 = new HashSet<>();
5
6 set1.add("a");
7 set1.add("b");
8 set1.add("c");
9
10 set2.add("c");
11 set2.add("d");
12 set2.add("e");
13
14 //差集
15 set1.removeAll(set2);
16 System.out.println("差集是 " + set1);
17
18 //并集是 [a,b]
19 }