import java.util.*;
public class ListTest {
public static void main(String[] args) {
List<String> ls = new ArrayList<String>();
List<String> ls2 = new ArrayList<String>();
ls.add("George");
ls.add("Jim");
ls.add("John");
ls.add("Blake");
ls.add("Kevin");
ls.add("Micheal");
ls2.add("George");
ls2.add("Katie");
ls2.add("Micheal");
ls2.add("Kevin");
ls2.add("Ryan");
System.out.println("第一个集合");// 打印输出第一个集合
ListIterator lit0 = ls.listIterator();
while (lit0.hasNext()) {
System.out.print(" " + lit0.next());
}
System.out.println();
System.out.println("第二个集合");// 打印输出第二个集合
lit0 = ls2.listIterator();
while (lit0.hasNext()) {
System.out.print(" " + lit0.next());
}
System.out.println();
jiao(ls, ls2);
System.out.println();
System.out.println("两个集合的并");
lit0 = bing(ls, ls2).listIterator();
while (lit0.hasNext()) {
System.out.print(" " + lit0.next());
}
System.out.println();
cha(ls, ls2);
}
public static void jiao(List ls, List ls2) {
System.out.println("两个集合的交");
List list = new ArrayList(Arrays.asList(new Object[ls.size()]));
Collections.copy(list, ls);
list.retainAll(ls2);
Iterator lit0 = list.listIterator();
while (lit0.hasNext()) {
System.out.print(" " + lit0.next());
}
}
public static List bing(List ls, List ls2) {
List list = new ArrayList(Arrays.asList(new Object[ls.size()]));
Collections.copy(list, ls);
list.addAll(ls2);// 两个集合的并
return list;
}
public static void cha(List ls, List ls2) {
ls = bing(ls, ls2);
List list = new ArrayList(Arrays.asList(new Object[ls.size()]));
Collections.copy(list, ls);
list.removeAll(ls2);// 两个集合的差
System.out.println("两个集合的差");
Iterator lit0 = list.listIterator();
while (lit0.hasNext()) {
System.out.print(" " + lit0.next());
}
}
}