第一版:增加add方法
package cn.zxg.collection; public class Node { Node previous;//上个节点 Node next;//下个节点 Object element;//自己的数据 public Node(Node previous,Node next,Object element){ this.previous=previous; this.next=next; this.element=element; } public Node(Object element){ this.element=element; } }
package cn.zxg.collection; /** * 自定义一个链表,增加一个add方法 */ public class SxtLinkList { private Node first; private Node last; private int size; public void add(Object obj){ Node node=new Node(obj); if(first==null){ first=node; last=node; }else { node.previous=last; node.next=null; last.next=node; last=node; } } public String toString() { StringBuilder sb=new StringBuilder(); sb.append("["); Node temp=first; while (temp!=null){ sb.append(temp.element+","); temp=temp.next; } sb.setCharAt(sb.length()-1,']'); return sb.toString(); } public static void main(String[] args) { SxtLinkList list=new SxtLinkList(); list.add("a"); list.add("b"); list.add("c"); System.out.println(list.toString()); } } 第二版、添加get方法,传入索引返回对应的内容