原文:自己動手系列——實現一個簡單的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