在使用retainAll方法时,不要直接使用Arrays.asList这种方式,可能会出现以下异常:
System.out.println(Arrays.asList("101,105").removeAll(Arrays.asList("101,105")));
原因:Arrays.asList() 返回的是Arrays的内部类ArrayList, 而不是java.util.ArrayList !

正确姿势如下 :
List<String> list1=new ArrayList<>();
list1.add("105");
list1.add("205");
list1.add("505");
List<String> list2=new ArrayList<>();
list2.add("305");
list2.add("505");
list2.add("205");
List origin = new ArrayList<>();
origin.addAll(list1);
origin.retainAll(list2);
System.out.println("【交集】"+origin);
System.out.println("【交集个数】"+origin.size());
版权声明:本文为wxd772113786原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。