package Collection; import java.util.LinkedList; /* LinkedList:特有的方法 addFirst()/addLast(); getFirst()/getLast(); removeFirst()/removeLast(); 若链表为空,抛出 没有这个元素异常/NoSuchElementException 但是 JDK1.6 版本以后出现了替代方法: offerFirst()/offerLast(); peekFirst()/peekLast() pollFirst()/pollLast():若链表为空,则返回null */ public class LinkListDemo { public static void main(String[] args) { LinkedList<String> link = new LinkedList<String>(); link.addFirst("Java01"); link.addFirst("Java02"); link.addFirst("Java03"); link.addFirst("Java04"); sop(link); // [Java04, Java03, Java02, Java01] /* get 方法只取元素 remove 方法取完元素,还删除 */ /* sop(link.getFirst()); sop(link.getLast()); sop(link.removeFirst()); sop(link.removeLast()); sop("size: "+link.size()); */ while (!link.isEmpty()) { sop(link.removeFirst()); } } public static void sop(Object obj) { System.err.println(obj); } } //////////////////////////////////////////////////////// //////////////////////////////////////////////////////// package Collection; import java.util.LinkedList; /* 使用LinkedList 模拟一个堆栈或者队列数据结构。 堆栈:先进后出 队列:先进先出 */ class DuiLie { private LinkedList link; DuiLie() { link = new LinkedList(); } public void myAdd(Object obj) { link.addFirst(obj); } public Object myGet() { return link.removeLast(); } public boolean isNull() { return link.isEmpty(); } } public class LinkListTest { public static void main(String[] args) { DuiLie dl = new DuiLie(); dl.myAdd("Java01"); dl.myAdd("Java02"); dl.myAdd("Java03"); dl.myAdd("Java04"); // System.out.println(dl.myGet()); System.out.println("============"); while (!dl.isNull()) { System.out.println(dl.myGet()); } } }
时间: 2024-11-05 02:28:42