Java链表基础(2)

来源:互联网 发布:阿里云备案承诺书demo 编辑:程序博客网 时间:2024/06/06 01:52
//链表的基本形式------>class Node{private String data;private Node next;public Node(){}public Node(String data){this.data = data;}public void setData(String data){this.data = data;}public String getData(){return this.data;}public void setNext(Node next){this.next = next;}public Node getNext(){return this.next;}//实现节点的添加//第一次调用 this = Link.head//第二次调用 this = Link.head.next//第三次调用 this = Link.head.next.nextpublic void addNode(Node newNode){if(this.next == null){ // 当前节点的下一个为空this.next = newNode;}else{ //当前节点不为空继续下一个节点this.next.addNode(newNode);}}//添加一个输出方法//第一次调用 this = Link.head//第二次调用 this = Link.head.next//第三次调用 this = Link.head.next.nextpublic void printNode(){System.out.println(this.data);if(this.next != null){this.next.printNode();}}}class Link{ //负责对数据的存放和输出private Node head; //根节点public void add(String data){ //存放数据Node newNode = new Node(data);if(head == null){ //根节点为空 则 把第一个保存的设置为根节点this.head = newNode;}else{ //根节点已经存在//后面的数据添加需要根据节点判断this.head.addNode(newNode);}}public void print(){ //输出数据if(this.head != null){this.head.printNode();}}}public class Demo1 {public static void main(String[] args) {Link link = new Link();link.add("111");link.add("222");link.add("333");link.add("444");link.print();}}



下文代码进一步优化!

0 0
原创粉丝点击