下面的程序先创建两个链表,然后将第二个链表的元素,穿插到到第一个链表中;然后从第二个链表中每间隔一个元素删除一个元素,最后测试remove方法。

    1. package linkedList;
    2. import java.util.*;
    3. /**
    4. * 这个程序用来演示链表操作
    5. */
    6. public class LinkedListTest
    7. {
    8. public static void main(String[] args)
    9. {
    10. var a = new LinkedList<String>();
    11. a.add("Amy");
    12. a.add("Carl");
    13. a.add("Erica");
    14. var b = new LinkedList<String>();
    15. b.add("Bob");
    16. b.add("Doug");
    17. b.add("Frances");
    18. b.add("Gloria");
    19. b.add("Henry");
    20. ListIterator<String> aIter = a.listIterator();
    21. Iterator<String> bIter = b.iterator();
    22. while (bIter.hasNext())
    23. {
    24. if (aIter.hasNext())
    25. aIter.next();
    26. aIter.add(bIter.next());
    27. }
    28. System.out.println(a);
    29. bIter = b.iterator();
    30. while (bIter.hasNext())
    31. {
    32. bIter.next(); // 跳过一个元素
    33. if (bIter.hasNext())
    34. {
    35. bIter.next();
    36. bIter.remove(); // 删除刚刚访问跳过的的元素
    37. }
    38. }
    39. System.out.println(b);
    40. a.removeAll(b);
    41. System.out.println(a);
    42. }
    43. }