JAVA中实现链表
来源:互联网 发布:手机版财务记账软件 编辑:程序博客网 时间:2024/06/06 04:17
由于数据本身不具备先后的关系,所以使用Node类来封装数据,同时利用Node来指向下一个节点。
1 简单链表的实现
节点类(Node):
数据测试:
这样写,结果没有问题,但是客户端做的事情太过多了,用户在操作的过程中要关心Node类是否存在,所有的节点的关系需要用户去处理,所以我们修改。
2 简单链表改进
针对上面的问题,我们需要定义一个工具来帮助客户端去隐藏所有的链表中给出的细节操作。添加Link工具类。
节点类:
Link类:
数据测试类:
现在这样设计,客户端不用去关注具体的Node以及引用的关系的细节,只关注了Link提供的方法;同时Link类的主要功能是控制Node类对象的产生和根节点的使用;Node类注重的是数据 的保存与引用 关系的分配。这样每个类的各做各的事。但是现在还有问题,因为Node类主要是给Link类来操作,但是现在我们可跳过Link类,直接去操作Node类,这样是没有任何意义存在的,所以我必须修改我们的设计结构,让Node 类只能让Link类使用,所以我们使用内部类来实现。
3 用内部类来实现链表
现在设计的结构已经可以说是定下来了,现在需要的是对功能的增加。
4 链表功能的完善
常用的功能已经基本上完成,但是这个链表基本上不能使用,因为我们的数据类型不可能只有String类型,而上面的代码是必须是String才可以正常使用。
5 通用链表
这里使用了泛型来处理不同的数据类型的问题,同时修改了返回数组的返回值修改成了Object类型。
阅读全文
0 0
- JAVA中实现链表
- java中如何实现链表
- java中双向链表的实现
- 自己实现Java中基于双向链表的LinkedList
- java中链表功能的实现
- java中实现定时器
- java中实现四舍五入
- java中实现全屏
- Java中实现多线程
- Java中实现定时器
- java中HashSet实现
- java中实现域名解析
- java中多线程实现
- Java中实现国际化
- java中实现多线程
- JAVA中实现加法器
- java 中锁实现
- java中BitMap实现
- 测手速小游戏
- c#多线程 task的使用
- html5新增表单属性
- python 笔记 1
- Java中java.util.Date类、java.sql.Date、日期格式总结
- JAVA中实现链表
- Chapter 7 Linux文件与目录管理——习题
- Swap
- Android 增强版百分比布局库 为了适配而扩展
- 二次测试
- 雷军分析:创业者必须算清账上的钱
- SQL PRIMARY KEY 约束
- zabbix3.2监控Mariadb
- 说说IO(一)- IO的分层