概述
链表是一种根据元素节点逻辑关系排列起来的一种数据结构。本篇文章将和大家讲述Java中的链表,感兴趣的朋友可以了解一下。
链表是一种根据元素节点逻辑关系排列起来的一种数据结构。利用链表可以保存多个数据,这一点类似于数组的概念。
但是数组本身有一个缺点—— 数组的长度固定,不可改变,在长度固定的情况下首选的肯定是数组,但是在现实的开发之中往往要保存的内容长度是不确定的,那么此时就可以利用链表这样的结构来代替数组的使用。
链表是一种最为简单的数据结构,它的主要目的是依靠引用关系来实现多个数据的保存,那么下面假设现在要保存的数据是字符串(引用类型),则可以按照图所示的关系进行保存。
Java实现链表代码:
//每一个链表实际上就是由多个节点组成的
public class Node { // 定义一个节点
private String data; // 用于保存数据
private Node next; // 用于保存下一个节点
// 每一个Node类对象都必须保存有响应的数据
public Node(String data) {
this.data = data;
}
public void setNext(Node next) {
this.next = next;
}
public Node getNext() {
return this.next;
}
public String getData() {
return this.data;
}
// 实现节点的添加
// 第一次调用(Link):this代表Link.root
// 第二次调用(Node):this代表Link.root.next
// 第三次调用(Node):this代表Link.root.next.next
public void addNode(Node newNode) {
if (this.next == null) { // 如果只有一个节点
this.next = newNode; // 保存新节点
} else { // 当前节点后面还有节点
// 当前节点的下一个节点继续保存
this.next.addNode(newNode);
}
}
// 第一次调用(Link):this代表Link.root
// 第二次调用(Node):this代表Link.root.next
// 第三次调用(Node):this代表Link.root.next.next
public void printNode() {
System.out.println(this.data);// 输出当前数据
if (this.next != null) {// 如果还有下一个节点
this.next.printNode();// 输出下一节点
}
}
}
public class LinkDemo {
public static void main(String[] args) {
Link link = new Link() ;
link.add("hello"); //存放数据
link.add("world");
link.add("wwww");
link.print(); //展示数据
}
}
//负责数据的设置和输出
public class Link {
private Node root; //根节点
//增加数据
public void add (String data){
//为了设置数据的先后关系,所以将data包装在一个Node类对象
Node newNode = new Node(data);
if(this.root == null ){ //一个链表只有一个根节点
this.root = newNode; //将新的节点设置为根节点
}else{
//从root节点后找到合适的位置
this.root.addNode(newNode);
}
}
//输出数据
public void print(){
if( this.root != null ){
this.root.printNode();
}
}
}
登录后复制
以上就是java中的链表是什么的详细内容,更多请关注靠谱客其它相关文章!
最后
以上就是淡淡蜗牛为你收集整理的java中的链表是什么的全部内容,希望文章能够帮你解决java中的链表是什么所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复