c++做单链表常用到友元函数,但是JAVA中没有友元函数的概念,所以用到内部类来创建单链表。
class LinkList <E>{
//将node置于内部类以访问其私有成员
private static class node<E> {
private final E data;
private node<E> next;
public node(E data, node<E> next){
this.data=data;
this.next=next;
}
public node(E data){
this(data,null);
}
}
private final node<E> head;
private node<E> tail;
//带头结点的单链表的创建
public LinkList(E headData){
tail=head= new node<>(headData);
}
//尾插法
public void add(E data){
tail=tail.next=new node<>(data);
}
public void read(){
node<E> now=head;
while(now.next!=null){
System.out.print(now.next.data+" ");
now=now.next;
}
}
}