快速和緊湊特定類型的開源 Java 集合 - fastutil

fmms 12年前發布 | 20K 次閱讀 Java Java開發

簡介

fastutil擴展了 Java集合框架,通過提供特定類型的map、set、list和queue,以及小內存占用、快速訪問和插入;也提供大(64位)array、set 和 list,以及快速、實用的 二進制文件和文本文件的I/O類。它是自由軟件,依照Apache許可證2.0發布,需要Java 6或更高版本 。
 
類實現其標準接口(例如, map 的 Map),可以插入現有代碼。此外,它們還提供未在標準類的附加??功能(如雙向迭代器) 。
 
除了 對象和基本類型,fastutil類提供支持引用(references),即使用相等運算符,而不是比較對象的equals()方法。
 
源代碼由C預處理器生成,從一組驅動文件開始。您可以在查看javadoc生成的文檔。尤其是概述說明中fastutil使用的設計選擇。

大數據結構

使用fastutil 6類的一組新類,使得它可以處理非常大的集合,特別是其規模超過2 31 。大數組是數組的數組,由一個神奇的靜態方如果是帶有64為索引的單位數組; big list 提供64位列表索引,hash big set 的 大小是只受限于核心內存量。常用的方法來自java.util.Arrays,類似的類已經擴展到大數組:可查看Javadoc關于 BigArrays和 IntBigArrays 的文檔,以獲得通用和特定類型的可用方法 。

 本文由用戶 fmms 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!