1.定义javabean类,成员变量,构造方法,重写toString() 方法
public class HeroNode {
private int no;
private String name;
private String nickname;
public HeroNode next;
public HeroNode() {
}
public HeroNode(int no, String name, String nickname) {
this.no = no;
this.name = name;
this.nickname = nickname;
}
@Override
public String toString() {
return "HeroNode{" +
"no=" + no +
", name='" + name + '\'' +
", nickname='" + nickname + '\'' +
'}';
}
}
2.定义一个链表类,有两个方法,新增节点的方法和遍历链表的方法
这里要注意的是要定义一个头节点,头结点不动
以及定义一个临时节点 temp ,用来定位添加的位置
注意要及时移动 temp 节点的位置, temp = temp.next
此外,add()方法传入的参数就是要添加的节点
public class LinkedList {
public HeroNode head = new HeroNode(0, "", "");
public void add(HeroNode heroNode){
//1.定义头结点
//2.定义一个临时变量
HeroNode temp = head;
//3.遍历链表
while (temp.next != null){
temp = temp.next;
}
//4.当到达链表结尾时,添加节点
temp.next = heroNode;
}
public void show(){
//1.定义一个头结点
//2.定义一个临时变量
HeroNode temp = head;
//3.遍历链表
while (temp != null){
//4.如果不是最后一个节点,打印输出该节点信息
System.out.println(temp);
temp = temp.next;
}
}
}
3.定义一个测试类,测试链表的新增与遍历方法
public class test {
public static void main(String[] args) {
LinkedList linkedList = new LinkedList();
HeroNode heroNode1 = new HeroNode(1, "宋江", "及时雨");
HeroNode heroNode2 = new HeroNode(2, "林冲", "豹子头");
HeroNode heroNode3 = new HeroNode(3, "鲁智深", "花和尚");
linkedList.add(heroNode1);
linkedList.add(heroNode2);
linkedList.add(heroNode3);
linkedList.show();
}
}
4.运行测试类,结果如下:
HeroNode{no=0, name='', nickname=''}
HeroNode{no=1, name='宋江', nickname='及时雨'}
HeroNode{no=2, name='林冲', nickname='豹子头'}
HeroNode{no=3, name='鲁智深', nickname='花和尚'}