commons-collections.jar下載
官方版- 軟件大?。?span itemprop="fileSize">471 KB
- 更新日期:2017-04-20
- 軟件語言:簡體中文
- 軟件類別:其它應(yīng)用
- 軟件授權(quán):免費(fèi)軟件
- 軟件官網(wǎng):未知
- 適用平臺(tái):WinXP, Win7, Win8, Win10, WinAll
- 軟件廠商:
軟件介紹人氣軟件相關(guān)文章網(wǎng)友評(píng)論下載地址
commons-collections.jar是一款專為Java Collections提供補(bǔ)充與擴(kuò)展的jar文件包,它能夠幫助用戶對collection的框架進(jìn)行擴(kuò)展與增加,能夠幫助用戶更好的進(jìn)行Java的項(xiàng)目,而在日常的開發(fā)中,很多項(xiàng)目中都需要commons-collections.jar的支持,如果用戶沒有安裝,許多Java開發(fā)項(xiàng)目都無法正常進(jìn)行,而今天為用戶提供了commons-collections.jar的下載,如果您有需要,趕緊下載吧!
軟件功能
提供一個(gè)類包來擴(kuò)展和增加標(biāo)準(zhǔn)的 Java Collection框架。
為Java標(biāo)準(zhǔn)的Collections API提供了相當(dāng)好的補(bǔ)充。在此基礎(chǔ)上對其常用的數(shù)據(jù)結(jié)構(gòu)操作進(jìn)行了很好的封裝、抽象和補(bǔ)充。保證性能的同時(shí)大大簡化代碼。
java集合框架是JDK 1.2中的主要補(bǔ)充。它增加了許多強(qiáng)大的數(shù)據(jù)結(jié)構(gòu),可以加速最重要的Java應(yīng)用程序的開發(fā)。從那時(shí)起,它已經(jīng)成為Java中收集處理的公認(rèn)標(biāo)準(zhǔn)。
Commons集合通過提供新的接口,實(shí)現(xiàn)和實(shí)用程序來尋求建立在JDK類上。有很多功能,包括:
包含每個(gè)對象的副本數(shù)量的集合的Bag接口
BidiMap界面,用于可以從值到關(guān)鍵字以及值的關(guān)鍵字的地圖
MapIterator接口,通過地圖提供簡單快速的迭代
轉(zhuǎn)換裝飾器,在添加到集合中時(shí)更改每個(gè)對象
使多個(gè)集合看起來像一個(gè)復(fù)合集合
添加了保留訂單元素的有序地圖和集合,包括基于LRU的地圖
允許密鑰和/或值在密切控制下進(jìn)行垃圾收集的參考地圖
許多比較器的實(shí)現(xiàn)
許多迭代器實(shí)現(xiàn)
從數(shù)組和枚舉到集合的適配器類
測試或創(chuàng)建集合的典型集合理論屬性(如聯(lián)合,交集和關(guān)閉)的實(shí)用程序
文件“入門用戶指南”可用于各種項(xiàng)目報(bào)告
commons-collections.jar的分類
根據(jù)集合類型,大致將此包的類歸納為9類:
Bag -- 在org.apache.commons.collections包中定義的接口,它extends java.util.Collection,而它的實(shí)現(xiàn)類都被放在下面的bag包中。HashBag是Bag接口的一個(gè)標(biāo)準(zhǔn)實(shí)現(xiàn)。而BagUtils提供一組static的方法讓調(diào)用者獲取經(jīng)過不同裝飾后的Bag實(shí)例.具體用法見代碼樣例
Buffer -- 定義在org.apache.commons.collections包下面的接口,用于表示按一定順序除去成員對象的collection如隊(duì)列等。具體的實(shí)現(xiàn)類在org.apache.commons.collections.buffer 包下可以找到。最簡單直接的Buffer實(shí)現(xiàn)類是UnboundedFifoBuffer,提供先進(jìn)先出的大小可變的隊(duì)列。而BoundedFifoBuffer則是對其大小進(jìn)行了限制,是固定大小的先進(jìn)先出隊(duì)列。BlockingBuffer要在多線程的環(huán)境中才能體現(xiàn)出它的價(jià)值,尤其是當(dāng)我們需要實(shí)現(xiàn)某種流水線時(shí)這個(gè)BlockingBuffer很有用:每個(gè)流水線上的組件從上游的BlockingBuffer獲取數(shù)據(jù),處理后放到下一個(gè)BlockingBuffer中依次傳遞。BlockingBuffer的核心特色通俗點(diǎn)說就是如果你向它要東西,而它暫時(shí)還沒有的話,你可以一直等待直至拿到為止。PriorityBuffer則提供比一般的先進(jìn)先出Buffer更強(qiáng)的控制力:我們可以自定義Comparator給它,告訴它怎么判定它的成員的先后順序,優(yōu)先級(jí)最高的最先走。此外還有執(zhí)行類型檢查的TypedBuffer、或者不可改變的UnmodifiableBuffer等等
Map -- 在java.util.Map的基礎(chǔ)上擴(kuò)展的接口和類。BidiMap,直譯就是雙向Map,可以通過key找到value,也可以通過value找到key,這在我們?nèi)粘5拇a-名稱匹配的時(shí)候很方便:因?yàn)槲覀兂诵枰ㄟ^代碼找到名稱之外,往往也需要處理用戶輸入的名稱,然后獲取其代碼。需要注意的是BidiMap當(dāng)中不光key不能重復(fù),value也不可以。MultiMap,就是說一個(gè)key不在是簡單的指向一個(gè)對象,而是一組對象,add()和remove()的時(shí)候跟普通的Map無異,只是在get()時(shí)返回一個(gè)Collection,利用MultiMap,我們就可以很方便的往一個(gè)key上放數(shù)量不定的對象,也就實(shí)現(xiàn)了一對多。LazyMap,意思就是這個(gè)Map中的鍵/值對一開始并不存在,當(dāng)被調(diào)用到時(shí)才創(chuàng)建。
Collection -- 用也各collection之間的類型轉(zhuǎn)換。典型的是TypedCollection,它實(shí)際上的作用就是提供一個(gè)decorate方法,我們傳進(jìn)去一個(gè)Collection和需要的類型甄別信息java.lang.Class,它給我們創(chuàng)建一個(gè)全新的強(qiáng)類型的Collection。(暫無樣例代碼,以后補(bǔ)充)
Comparator -- 提供了一些Comparator的實(shí)現(xiàn)類(都在org.apache.commons.collections.comparators包下面)BooleanComparator – 用于排序一組Boolean對象,指明先true還是先false;ComparableComparator – 用于排序?qū)崿F(xiàn)了java.lang.Comparable接口的對象(我們常用的Java類如String、Integer、Date、Double、File、Character等等都實(shí)現(xiàn)了Comparable接口);ComparatorChain – 定義一組Comparator鏈,鏈中的Comparator對象會(huì)被依次執(zhí)行;FixedOrderComparator – 用于定義一個(gè)特殊的順序,對一組對象按照這樣的自定義順序進(jìn)行排序;NullComparator – 讓null值也可參與比較,可以設(shè)定為先null或者后null;
ReverseComparator – 將原有的Comparator效果反轉(zhuǎn);TransformingComparator – 將一個(gè)Comparator裝飾為具有Transformer效果的Comparator。
Predicate -- 它以一個(gè)Object對象為參數(shù),處理后返回一個(gè)boolean值,檢驗(yàn)?zāi)硞€(gè)對象是否滿足某個(gè)條件。Commons Collections也提供了一組定義好的Predicate類供我們使用,這些類都放在org.apache.commons.collections.functors包中。當(dāng)然,我們也可以自定義Predicate,只要實(shí)現(xiàn)這個(gè)Predicate接口即可。
Transformer -- 我們有時(shí)候需要將某個(gè)對象轉(zhuǎn)換成另一個(gè)對象供另一組方法調(diào)用,而這兩類對象的類型有可能并不是出于同一個(gè)繼承體系的,或者說出了很基本的Object之外沒有共同的父類,或者我們根本不關(guān)心他們是不是有其他繼承關(guān)系,甚至就是同一個(gè)類的實(shí)例只是對我們而言無所謂,我們?yōu)榱怂軌虮缓罄m(xù)的調(diào)用者有意義的識(shí)別和處理,在這樣的情形,我們就可以利用Transformer。除了基本的轉(zhuǎn)型Transformer之外,Commons Collections還提供了Transformer鏈和帶條件的Transformer,使得我們很方便的組裝出有意義的轉(zhuǎn)型邏輯。
Closure -- 這一組接口和類提供一個(gè)操作對象的execute方法,為我們在處理一系列對象時(shí)可以將處理邏輯分離出來。ChainedClosure可以包裝一組Closure作為整體執(zhí)行;IfClosure在創(chuàng)建時(shí)需要提供給它一個(gè)Predicate和兩個(gè)Closure,執(zhí)行時(shí)先做Predicate判定再?zèng)Q定執(zhí)行哪一個(gè)Closure;SwitchClosure跟SwitchTransformer類似,根據(jù)創(chuàng)建時(shí)傳入的Predicate組和Closure組對應(yīng)執(zhí)行;WhileClosure則根據(jù)創(chuàng)建時(shí)傳入的Predicate做判斷,如果為true則執(zhí)行Closure,直到Predicate返回false;等等。
Iterator -- java.util.Iterator接口定義了標(biāo)準(zhǔn)的Collection遍歷方法,但是如果不做改變的使用它,我們得到的是從頭到尾一次性的遍歷。假如我們需要循環(huán)遍歷,假如我們需要遍歷某一段,假如我們需要遍歷滿足某些條件的元素,等等等等,我們就不能完全依賴于這個(gè)Iterator的標(biāo)準(zhǔn)實(shí)現(xiàn)了。除非我們寧可在此基礎(chǔ)上在調(diào)用的代碼中多加一些判斷,不過這樣的話代碼就會(huì)顯得混亂,時(shí)間長了就容易變得難以維護(hù)。Commons Collections的這一組Iterator為我們帶來了便利。
下載地址
-
commons-collections.jar下載 官方版
人氣軟件
Adobe Acrobat Pro DC 永久激活版下載548 MB
/簡體中文X-Force KeyGen注冊機(jī)合集(32+64位)658 KB
/英文autocad2017注冊機(jī) 支持32位/64位676 KB
/簡體中文KYTool插件下載(凱元工具)30.54 MB
/簡體中文云南師范大學(xué)上網(wǎng)認(rèn)證客戶端44.8 MB
/簡體中文草圖大師通用注冊機(jī)(sketchup2016激活碼獲取)894 KB
/簡體中文Stata 16(統(tǒng)計(jì)學(xué)軟件)356 MB
/簡體中文refprop(制冷劑物性查詢運(yùn)算軟件)附中文教程6.5 MB
/簡體中文hpds2011下載(城鎮(zhèn)道路路面設(shè)計(jì))1.3 MB
/簡體中文中控zktime考勤軟件系統(tǒng)38.7 MB
/簡體中文
相關(guān)文章
查看所有評(píng)論>>網(wǎng)友評(píng)論共0條
精彩評(píng)論
- 最新評(píng)論