IDEA插件EasyTool 多功能插件工具集 v2.1.8 免費版19.9MB / 09-09
JetBrains IDE插件Grazie Pro 2025.2 V0.3.396 官方免費版86.0MB / 01-19
AI助手JetBrains AI Assistant插件 2025.3.5 v253 官方最新免費87.9MB / 05-22
IntelliJ IDEA 輔助插件 jutils 2.0.6 官方免費版5.4MB / 07-21
IntelliJ IDEA插件 IdeaVim 2025.3 v2.35.1 官方免費版6.5MB / 05-26
intellij插件CSV Editor 2024.2 v4.2.0 官方最新免費版370KB / 02-15
IntelliJ idea大數(shù)據(jù)開發(fā)工具 Big Data Tools v2026.1 官方最新100MB / 03-03
yuicompressor-2.4.8.jar js css壓縮工具核心文件770KB / 06-30
Simple Socket Tool(服務器連接測試工具) v0.4 綠色免費版596KB / 06-02
Intellij Idea插件Javadoc2 2024 V2.2.0 中文增強正式版1.1MB / 05-12
-
-
AI助手JetBrains AI Assistant插件 2025.3.5 v253 官方最新免費 java相關 / 87.9MB
-
IntelliJ idea大數(shù)據(jù)開發(fā)工具 Big Data Tools v2026.1 官方最新 java相關 / 100MB
-
-
Apache Log4j v2.25.3 官方最新版 java相關 / 7.1MB
-
-
JetBrains IDE插件Grazie Pro 2025.2 V0.3.396 官方免費版 java相關 / 86.0MB
-
API神器 Restful Fast Request – API Buddy v2025.1.7 官方最新 java相關 / 20.2MB
-
IDEA插件EasyTool 多功能插件工具集 v2.1.8 免費版 java相關 / 19.9MB
-
詳情介紹
commons-collections.jar包是java開發(fā)中必備的一款jar包工具,如果缺少了這款了commons-collections.jar包,java開發(fā)將變得寸步難行,需要此款commons-collections.jar包的朋友們歡迎前來下載使用。

文件預覽

包的功能
為Java標準的Collections API提供了相當好的補充。在此基礎上對其常用的數(shù)據(jù)結構操作進行了很好的封裝、抽象和補充。保證性能的同時大大簡化代碼。
包的分類
將此包的類歸納為9類:
Bag -- 在org.apache.commons.collections包中定義的接口,它extends java.util.Collection,而它的實現(xiàn)類都被放在下面的bag包中。HashBag是Bag接口的一個標準實現(xiàn)。而BagUtils提供一組static的方法讓調用者獲取經過不同裝飾后的Bag實例.具體用法見代碼樣例
Buffer -- 定義在org.apache.commons.collections包下面的接口,用于表示按一定順序除去成員對象的collection如隊列等。具體的實現(xiàn)類在org.apache.commons.collections.buffer 包下可以找到。最簡單直接的Buffer實現(xiàn)類是UnboundedFifoBuffer,提供先進先出的大小可變的隊列。而BoundedFifoBuffer則是對其大小進行了限制,是固定大小的先進先出隊列。BlockingBuffer要在多線程的環(huán)境中才能體現(xiàn)出它的價值,尤其是當我們需要實現(xiàn)某種流水線時這個BlockingBuffer很有用:每個流水線上的組件從上游的BlockingBuffer獲取數(shù)據(jù),處理后放到下一個BlockingBuffer中依次傳遞。BlockingBuffer的核心特色通俗點說就是如果你向它要東西,而它暫時還沒有的話,你可以一直等待直至拿到為止。PriorityBuffer則提供比一般的先進先出Buffer更強的控制力:我們可以自定義Comparator給它,告訴它怎么判定它的成員的先后順序,優(yōu)先級最高的最先走。此外還有執(zhí)行類型檢查的TypedBuffer、或者不可改變的UnmodifiableBuffer等等
Map -- 在java.util.Map的基礎上擴展的接口和類。BidiMap,直譯就是雙向Map,可以通過key找到value,也可以通過value找到key,這在我們日常的代碼-名稱匹配的時候很方便:因為我們除了需要通過代碼找到名稱之外,往往也需要處理用戶輸入的名稱,然后獲取其代碼。需要注意的是BidiMap當中不光key不能重復,value也不可以。MultiMap,就是說一個key不在是簡單的指向一個對象,而是一組對象,add()和remove()的時候跟普通的Map無異,只是在get()時返回一個Collection,利用MultiMap,我們就可以很方便的往一個key上放數(shù)量不定的對象,也就實現(xiàn)了一對多。LazyMap,意思就是這個Map中的鍵/值對一開始并不存在,當被調用到時才創(chuàng)建。
Collection -- 用也各collection之間的類型轉換。典型的是TypedCollection,它實際上的作用就是提供一個decorate方法,我們傳進去一個Collection和需要的類型甄別信息java.lang.Class,它給我們創(chuàng)建一個全新的強類型的Collection。(暫無樣例代碼,以后補充)
Comparator -- 提供了一些Comparator的實現(xiàn)類(都在org.apache.commons.collections.comparators包下面)BooleanComparator – 用于排序一組Boolean對象,指明先true還是先false;ComparableComparator – 用于排序實現(xiàn)了java.lang.Comparable接口的對象(我們常用的Java類如String、Integer、Date、Double、File、Character等等都實現(xiàn)了Comparable接口);ComparatorChain – 定義一組Comparator鏈,鏈中的Comparator對象會被依次執(zhí)行;FixedOrderComparator – 用于定義一個特殊的順序,對一組對象按照這樣的自定義順序進行排序;NullComparator – 讓null值也可參與比較,可以設定為先null或者后null;
ReverseComparator – 將原有的Comparator效果反轉;TransformingComparator – 將一個Comparator裝飾為具有Transformer效果的Comparator。
Predicate -- 它以一個Object對象為參數(shù),處理后返回一個boolean值,檢驗某個對象是否滿足某個條件。Commons Collections也提供了一組定義好的Predicate類供我們使用,這些類都放在org.apache.commons.collections.functors包中。當然,我們也可以自定義Predicate,只要實現(xiàn)這個Predicate接口即可。
Transformer -- 我們有時候需要將某個對象轉換成另一個對象供另一組方法調用,而這兩類對象的類型有可能并不是出于同一個繼承體系的,或者說出了很基本的Object之外沒有共同的父類,或者我們根本不關心他們是不是有其他繼承關系,甚至就是同一個類的實例只是對我們而言無所謂,我們?yōu)榱怂軌虮缓罄m(xù)的調用者有意義的識別和處理,在這樣的情形,我們就可以利用Transformer。除了基本的轉型Transformer之外,Commons Collections還提供了Transformer鏈和帶條件的Transformer,使得我們很方便的組裝出有意義的轉型邏輯。
Closure -- 這一組接口和類提供一個操作對象的execute方法,為我們在處理一系列對象時可以將處理邏輯分離出來。ChainedClosure可以包裝一組Closure作為整體執(zhí)行;IfClosure在創(chuàng)建時需要提供給它一個Predicate和兩個Closure,執(zhí)行時先做Predicate判定再決定執(zhí)行哪一個Closure;SwitchClosure跟SwitchTransformer類似,根據(jù)創(chuàng)建時傳入的Predicate組和Closure組對應執(zhí)行;WhileClosure則根據(jù)創(chuàng)建時傳入的Predicate做判斷,如果為true則執(zhí)行Closure,直到Predicate返回false;等等。
Iterator -- java.util.Iterator接口定義了標準的Collection遍歷方法,但是如果不做改變的使用它,我們得到的是從頭到尾一次性的遍歷。假如我們需要循環(huán)遍歷,假如我們需要遍歷某一段,假如我們需要遍歷滿足某些條件的元素,等等等等,我們就不能完全依賴于這個Iterator的標準實現(xiàn)了。除非我們寧可在此基礎上在調用的代碼中多加一些判斷,不過這樣的話代碼就會顯得混亂,時間長了就容易變得難以維護。Commons Collections的這一組Iterator為我們帶來了便利。
下載地址
人氣軟件
相關文章
-
IDEA插件EasyTool 多功能插件工具集 v2.1.8 免費版EasyTool 是一個支持多系統(tǒng)平臺的IDE插件工具集,具有日常編程過程中常用的功能特性,提供一系列可視化、個性化的配置界面, 具體功能可在安裝插件后盡情體驗,歡迎需要的...
-
JetBrains IDE插件Grazie Pro 2025.2 V0.3.396 官方免費版Grazie是一個IDEA插件,科技界人士的 AI 寫作伴侶,通過將生成式 AI 集成到您的 JetBrains IDE、瀏覽器和其他工具中,簡化非編碼任務...
-
AI助手JetBrains AI Assistant插件 2025.3.5 v253 官方最新免費解壓版JetBrainsQ AI Assistant現(xiàn)已全面推出,搭載大量新功能和改進,助力提高您在JetBrains IDE中的工作效率,可以解釋代碼、回答有關代碼片段的問題、提交消息等...
-
IntelliJ IDEA 輔助插件 jutils 2.0.6 官方免費版jutils是一個IntelliJ IDEA 輔助插件,主要包含四個實用功能,外部編輯器打開文件、生成默認 setter 方法、打包文件、打包編譯文件,需要的朋友可下載...
-
IntelliJ IDEA插件 IdeaVim 2025.3 v2.35.1 官方免費版IdeaVim是IntelliJ IDEA的一個插件,JetBrains IDE的Vim引擎,支持許多Vim功能,包括正常/插入/視覺模式、運動鍵、刪除/更改、標記、寄存器、一些Ex命令、宏、Vim插件等等...
-
intellij插件CSV Editor 2024.2 v4.2.0 官方最新免費版用彩虹色的表格和文本編輯器編輯CSV文件的插件,還提供語法驗證、高亮顯示、自定義等功能。是輕巧的CSV插件...
下載聲明
☉ 解壓密碼:www.fzitv.net 就是本站主域名,希望大家看清楚,[ 分享碼的獲取方法 ]可以參考這篇文章
☉ 推薦使用 [ 迅雷 ] 下載,使用 [ WinRAR v5 ] 以上版本解壓本站軟件。
☉ 如果這個軟件總是不能下載的請在評論中留言,我們會盡快修復,謝謝!
☉ 下載本站資源,如果服務器暫不能下載請過一段時間重試!或者多試試幾個下載地址
☉ 如果遇到什么問題,請評論留言,我們定會解決問題,謝謝大家支持!
☉ 本站提供的一些商業(yè)軟件是供學習研究之用,如用于商業(yè)用途,請購買正版。
☉ 本站提供的commons-collections-3.1.jar包 官方免費版資源來源互聯(lián)網,版權歸該下載資源的合法擁有者所有。











