您的位置:首页 > 编程语言 > Java开发

Java面向对象基础--实现单向链表

2013-09-22 14:44 537 查看

1、设计节点类

以string为数据保存内容,还必须有一个属性保存下一个节点的引用地址。

class Node{		// 定义节点类
	private String data ;	// 保存节点内容
	private Node next ;		// 表示保存下一个节点
	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 ;	// 取得节点的内容
	}
};


2、测试节点类

class Node{		// 定义节点类
	private String data ;	// 保存节点内容
	private Node next ;		// 表示保存下一个节点
	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 ;	// 取得节点的内容
	}
};
public class LinkDemo01{
public static void main(String args[]){
Node root = new Node("火车头") ; // 定义根节点
Node n1 = new Node("车厢-A") ; // 定义第一个车厢(第一个节点)
Node n2 = new Node("车厢-B") ; // 定义第二个车厢(第二个节点)
Node n3 = new Node("车厢-C") ; // 定义第三个车厢(第三个节点)
root.setNext(n1) ; // 设置火车头的下一个节点是第一个车厢A
n1.setNext(n2) ; // 设置第一个车厢的下一个节点是第二个车厢
n2.setNext(n3) ; // 设置第二个车厢的下一个节点是第三个车厢
n3.setNext(null);
printNode(root) ; // 从头开始输出
}
//递归操作,进行输出
public static void printNode(Node node){ // 输出节点
System.out.print(node.getData() + "\t") ; // 输出节点的内容
if(node.getNext()!=null){ // 判断此节点是否存在下一个节点
printNode(node.getNext()) ; // 向下继续输出
}
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: