链表是树和图的基础,通过链表可以实现很多功能,这里简单实现一个按顺序添加数据的功能
package com.page;
//利用单链表实现英雄人物的存储
//按照排名进行存储
//英雄人物有排名、名称和别名三个数据
public class SinglelinkedListDemo {
public static void main(String[] args) {
SingleHeroList hero=new SingleHeroList();
hero.addByOrder(new HeroList(1,"宋江","及时雨"));
hero.addByOrder(new HeroList(5,"关胜","大刀"));
hero.addByOrder(new HeroList(3,"吴用","智多星"));
hero.addByOrder(new HeroList(2,"卢俊义","玉麒麟 "));
hero.listHero();
System.out.println(hero.length());
System.out.println(hero.getHeroByNo(3));
}
}
//一个英雄的管理类,实现增删改查
class SingleHeroList{
private HeroList hero=new HeroList(0,"","");//作为头节点,只作为定位功能
//按照排名添加英雄
public void addByOrder(HeroList heroList){
HeroList temp=hero;
//通过循环遍历找到需要插入的位置
while(true){
//注意,这三个的顺序不能改变
if (temp.next==null){
break;
}
if (temp.next.no==heroList.no){//排名存在
throw new RuntimeException(heroList.no+"这个排名已存在");
}
if (heroList.no



