原文:自己动手系列——实现一个简单的LinkedList

LinkedList与ArrayList都是List接口的具体实现类。LinkedList与ArrayList在功能上也是大体一致,但是因为两者具体的实现方式不一致,所以在进行一些相同操作的时候,其效率也是有差别的。 对于抽象的数据结构 线性表而言,线性表分为两种,一种是顺序存储结构的顺序表,另一种是通过指针来描述其逻辑位置的链表。 针对于具体的Java实现: 顺序存储的顺序表是用数组来实现的,以 ...

2017-02-15 15:49 2 5340 推荐指数:

查看详情

自己动手系列——实现一个简单的ArrayList

ArrayList是Java集合框架中一个经典的实现类。他比起常用的数组而言,明显的优点在于,可以随意的添加和删除元素而不需考虑数组的大小。处于练的目的,实现一个简单的ArrayList,并且把实现的过程在此记录。 实现的ArrayList主要的功能如下: 默认构造器和一个参数的有参 ...

Wed Feb 08 20:12:00 CST 2017 4 5896
自己动手一个LinkedList

自己动手一个LinkedList 1. 原理 LinkedList是基于双链表的动态数组,数据添加删除效率高,只需要改变指针指向即可,但是访问数据的平均效率低,需要对链表进行遍历。因此,LinkedList善于进行一些插入、删除操作,不利于进行检索操作。LinkedList ...

Fri Oct 18 04:14:00 CST 2019 0 498
自己动手实现一个简单的 IOC容器

控制反转,即Inversion of Control(IoC),是面向对象中的一种设计原则,可以用有效降低架构代码的耦合度,从对象调用者角度又叫做依赖注入,即Dependency Injection(DI),通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的容器,将其所依赖的对象的引用 ...

Sun Nov 01 03:03:00 CST 2020 0 1587
动手实现一个简单的 rpc 框架到入门 grpc (上)

rpc 全称 Remote Procedure Call 远程过程调用,即调用远程方法。我们调用当前进程中的方法时很简单,但是想要调用不同进程,甚至不同主机、不同语言中的方法时就需要借助 rpc 来实现,下面我一步步实现一个简单的 rpc 调用。 server 端注册函数,运行并接收客户端请求 ...

Thu Jul 09 00:30:00 CST 2020 0 556
自己动手实现一个简单的JSON解析器

1. 背景 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。相对于另一种数据交换格式 XML,JSON 有着诸多优点。比如易读性更好,占用空间更少等。在 ...

Fri Jan 26 17:44:00 CST 2018 1 2232
动手造轮子:实现一个简单的依赖注入(一)

动手造轮子:实现一个简单的依赖注入(一) Intro 在上一篇文章中主要介绍了一下要做的依赖注入的整体设计和大概编程体验,这篇文章要开始写代码了,开始实现自己的依赖注入框架。 类图 首先来温习一下上次提到的 UML 类图 服务生命周期 服务生命周期定义: 服务定义 服务注册 ...

Tue Oct 29 07:36:00 CST 2019 6 1035
动手造轮子:实现一个简单的 EventBus

动手造轮子:实现一个简单的 EventBus Intro EventBus 是一种事件发布订阅模式,通过 EventBus 我们可以很方便的实现解耦,将事件的发起和事件的处理的很好的分隔开来,很好的实现解耦。 微软官方的示例项目 EShopOnContainers 也有在使用 EventBus ...

Mon Jul 22 15:58:00 CST 2019 15 5270
动手造轮子:实现一个简单的依赖注入(零)

动手造轮子:实现一个简单的依赖注入(零) Intro 依赖注入为我们写程序带来了诸多好处,在微软的 .net core 出来的同时也发布了微软开发的依赖注入框架 Microsoft.Extensions.DependencyInjection,大改传统 asp.net 的开发模式 ...

Mon Oct 28 00:22:00 CST 2019 0 745
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM