成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

比較:HashMap和TreeMap

開發 后端
HashMap和TreeMap在開始接觸時,很容易人云亦云變得混淆,從類的來源上就開始不清楚。文章從兩個類的基礎概念上進行行對比,區分兩者的不同。

1.AbstractMap抽象類和SortedMap接口

AbstractMap抽象類:覆蓋了equals()和hashCode()方法以確保兩個相等映射返回相同的哈希碼。如果兩個映射大小相等、包含同樣的鍵且每個鍵在這兩個映射中對應的值都相同,則這兩個映射相等。映射的哈希碼是映射元素哈希碼的總和,其中每個元素是Map.Entry接口的一個實現。因此,不論映射內部順序如何,兩個相等映射會報告相同的哈希碼。

SortedMap接口:它用來保持鍵的有序順序。SortedMap接口為映像的視圖(子集),包括兩個端點提供了訪問方法。除了排序是作用于映射的鍵以外,處理SortedMap和處理SortedSet一樣。添加到SortedMap實現類的元素必須實現Comparable接口,否則您必須給它的構造函數提供一個Comparator接口的實現。TreeMap類是它的***一份實現。

2.兩種常規Map實現(分別繼承自AbstractMap和SortedMap)

HashMap:基于哈希表實現。使用HashMap要求添加的鍵類明確定義了hashCode()和equals()[可以重寫hashCode()和equals()],為了優化HashMap空間的使用,您可以調優初始容量和負載因子。

(1)HashMap(): 構建一個空的哈希映像

(2)HashMap(Map m): 構建一個哈希映像,并且添加映像m的所有映射

(3)HashMap(int initialCapacity): 構建一個擁有特定容量的空的哈希映像

(4)HashMap(int initialCapacity, float loadFactor): 構建一個擁有特定容量和加載因子的空的哈希映像

TreeMap:基于紅黑樹實現。TreeMap沒有調優選項,因為該樹總處于平衡狀態。

(1)TreeMap():構建一個空的映像樹

(2)TreeMap(Map m): 構建一個映像樹,并且添加映像m中所有元素

(3)TreeMap(Comparator c): 構建一個映像樹,并且使用特定的比較器對關鍵字進行排序

(4)TreeMap(SortedMap s): 構建一個映像樹,添加映像樹s中所有映射,并且使用與有序映像s相同的比較器排序

3.兩種常規Map性能

HashMap:適用于在Map中插入、刪除和定位元素。

Treemap:適用于按自然順序或自定義順序遍歷鍵(key)。

4.總結:HashMap通常比TreeMap快一點(樹和哈希表的數據結構使然),建議多使用HashMap,在需要排序的Map時候才用TreeMap。

原文鏈接:http://blog.csdn.net/forwayfarer/article/details/2922918

責任編輯:周立方 來源: Forrest He的專欄
相關推薦

2022-09-13 14:44:40

HashMap哈希表紅黑樹

2015-09-16 09:10:27

Java源碼解析

2021-01-15 05:39:13

HashMapHashTableTreeMap

2024-12-31 08:17:34

2022-11-03 09:28:20

GoFrameGomap

2011-02-28 09:31:30

HashtableHashMap

2009-09-12 10:22:20

unixwindows操作系統

2020-02-20 16:45:39

RabbitMQKafka架構

2009-06-24 16:16:30

JSF和Tapestr

2024-01-10 14:17:52

pytorchnumpy深度學習

2009-12-09 09:30:04

LinuxuClinux

2009-06-26 14:37:10

EJB和Spring

2009-07-21 13:43:53

ASP和JSP比較

2011-03-03 09:39:36

2009-07-15 16:39:51

AWT和Swing

2009-07-10 11:07:18

Swing和SWT

2010-07-14 16:48:02

Perl字符串比較

2019-04-02 10:50:05

框架Spring開發

2011-03-29 23:17:36

KindleAndroid硬件

2011-03-29 13:25:12

ZabbixNagiosZenoss
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产综合在线视频 | 国产精品久久久久国产a级 欧美日韩国产免费 | 一区视频| 欧美亚洲国语精品一区二区 | 99热视| 日韩欧美在线播放 | 中文字幕一区二区三区四区五区 | 91精品一区 | 久久中文免费视频 | 中文字幕在线观看日韩 | 欧美性生交大片免费 | 久久综合一区 | 久久av网 | 天天艹 | 色综合区 | 五月婷婷在线视频 | 黄色网址大全在线观看 | 久久精品免费观看 | 亚洲影音| 九九精品久久久 | 在线看av的网址 | 国产一区二区在线播放 | 欧美性受xxx| 日本午夜在线视频 | 日韩免费中文字幕 | 日本在线观看网址 | 国产一区二区三区免费视频 | 日韩精品一区二区三区中文在线 | 免费精品视频在线观看 | 日本一区二区影视 | 色桃网 | 国产韩国精品一区二区三区 | 亚洲综合色丁香婷婷六月图片 | 日韩欧美国产一区二区三区 | 国产精品日韩在线观看 | 亚洲精品日韩视频 | 成人免费观看男女羞羞视频 | 免费观看av网站 | 中文字幕日韩欧美一区二区三区 | 国产最新精品视频 | 国产中文区二幕区2012 |