当前位置: 首页 > news >正文

【LinkedList demo 内部类讲说】

LinkedList demo 内部类讲说

      • 1. Node节点
      • 2.MyLinkedList
      • 3. LinkedListTest 测试类

1. Node节点

public class Node<T> {private Node<T> pre;private Node<T> next;private T data;public Node() {}public Node getPre() {return pre;}public void setPre(Node pre) {this.pre = pre;}public Node getNext() {return next;}public void setNext(Node next) {this.next = next;}public T getData() {return data;}public void setData(T data) {this.data = data;}public Node(Node pre, Node next, T data) {this.pre = pre;this.next = next;this.data = data;}
}

2.MyLinkedList

public class MyLinkedList<T>{private Node<T> head;private Node<T> tail;private int size;public MyLinkedList() {}public MyLinkedList(Node<T> head) {this.head = head;}public void add(T data) {if (head == null) {Node<T> node = new Node<>();node.setData(data);head = node;tail = node;} else {Node<T> node = new Node<>();node.setData(data);node.setPre(tail);node.setNext(null);tail.setNext(node);tail = node;}size++;}public int size() {return size;}public T get(int index) {if (index < 0 || index >= size) throw new IndexOutOfBoundsException("Index: " + index + ", Size: " + size);Node<T> node = head;for (int i = 0; i < index; i++) {node = node.getNext();}return (T)node.getData();}
}

3. LinkedListTest 测试类

public class LinkedListTest {/*** 内部类可以访问外部类的所有成员,包括私有成员。根据定义的位置分为:* 1.成员内部类(最常用)* 2.静态内部类* 3.局部内部类* 4.匿名内部类* 形象地比喻,内部类像是“遥控器的电池”* 想象一下,你买了一台空调,它配有一个遥控器(内部类)* 遥控器可以控制空调,就像内部类可以访问外部类的属性* 如果遥控器有电池仓(匿名内部类),可以插入具体电池(一个临时的实现)** 何时使用内部类?* 内部类只为外部类服务,不需要被外部调用* 需要访问外部类的私有成员时,* 代码结构上是一种强关联的逻辑组织。*/public static void main(String[] args) {MyLinkedList<String> list = new MyLinkedList<>();list.add("aa");list.add("bb");list.add("cc");String result = list.get(1);System.out.println(result); //输出bb}
}
http://www.dtcms.com/a/202017.html

相关文章:

  • 【基于SpringBoot的图书购买系统】深度讲解 分页查询用户信息,分析前后端交互的原理
  • Linux(3)——基础开发工具
  • 威纶通触摸屏IP地址设定步骤及程序下载指南
  • Nginx笔记
  • 传输层协议:UDP和TCP
  • Unity3D仿星露谷物语开发46之种植/砍伐橡树
  • 【Redis】跳表结构
  • Pytorch分布式训练,数据并行,单机多卡,多机多卡
  • 深度学习中的正则化方法与卷积神经网络基础
  • HTB 赛季8靶场 - Puppy
  • 【MySQL】04.数据类型
  • PLC系统中开关量与模拟量信号解析
  • 【Java高阶面经】3.熔断机制深度优化:从抖动治理到微服务高可用架构实战
  • 使用 Qt Designer 开发
  • 第41天-Python+Qt四屏播放器开发指南
  • 第12天-Python+Qt5开发实战:10大经典案例与深度解析
  • Qt 控件发展历程 + 目标(1)
  • Visual Studio 制作msi文件环境搭建
  • Word 转 HTML API 接口
  • RK3568 OH5.1 源码编译及问题
  • 华为云鲲鹏型kC2云服务器——鲲鹏920芯片性能测评
  • LLM笔记(十)vLLM(1)PagedAttention论文笔记
  • 汇川PLC通过Profinet转ModbusTCP网关读取西门子PLC数据案例
  • 足式机器人经典控制常用的ROS库介绍
  • SpringBoot与GeoHash整合,实现骑手就近派单功能
  • 离线环境破局:聚客AI无外网部署Dify的依赖镜像打包与增量更新方案
  • 前端开发——前端样式BUG调试全指南2025终极版
  • 【web应用】前后端分离开源项目联调运行的过程步骤ruoyi
  • SCAU--平衡树
  • 武汉副市长李湛莅临指导 珈和展会精彩亮相引《武汉电视台》深度报道 以硬核科技赋能农业强链新范式获政府媒体“双重点赞”