知识介绍:
链表分为 单向链表和双向链表。链表是通过地址引用【c语言中的指针】将各个节点链接在一起的。
节点:
单链表:
链表如何串在一起用代码,和如何输出
//形成单链表
public class MyLinkList {
//产生节点 内部类
public class Node {
public int data;
public Node next;
public Node(){}
public Node(int data){
this.data = data;
}
}
//第一个指针
private Node first;
//当前指向了哪个节点
private Node current = null;
/**
* 在MyLinklist对象中添加元素
* @param value -- 元素的数据
*/
public void add(int value){
//产生一个新的节点
Node newNode = new Node(value);
//如果没有任何节点存在(第一个节点)
if(first == null){
//告知它是第一个节点
first = newNode;
//并且当前节点就指在这
current = newNode;
}else{
//如果不是第一个节点 [先从当前节点在上一个节点指向新节点,再把当前节点替换成新的节点】
current.next = newNode;
current = newNode;
}
}
/***
* 在控制台显示数据
*/
public void display(){
//我希望从第一个数据开始拿起
Node node =first;
while (node!=null){
int value = node.data;
System.out.println(value);
//拿下一个
node=node.next;
}
}
}
测试:
public class MainDemo {
public static void main(String[] args) {
MyLinkList list = new MyLinkList();
list.add(10);
list.add(3);
list.add(9);
list.display();
}
}