
标签:
commons-collections.jar包是一款java开发中必备的一款jar包,如果缺少了这款了commons-collections.jar包,java开发将变得寸步难行,下载commons-collections.jar使用吧。


为Java标准的Collections API提供了相当好的补充。在此基础上对其常用的数据结构操作进行了很好的封装、抽象和补充。保证性能的同时大大简化代码。
将此包的类归纳为9类:
Bag -- 在org.apache.commons.collections包中定义的接口,它extends java.util.Collection,而它的实现类都被放在下面的bag包中。HashBag是Bag接口的一个标准实现。而BagUtils提供一组static的方法让调用者获取经过不同装饰后的Bag实例.具体用法见代码样例
Buffer -- 定义在org.apache.commons.collections包下面的接口,用于表示按一定顺序除去成员对象的collection如队列等。具体的实现类在org.apache.commons.collections.buffer 包下可以找到。最简单直接的Buffer实现类是UnboundedFifoBuffer,提供先进先出的大小可变的队列。而BoundedFifoBuffer则是对其大小进行了限制,是固定大小的先进先出队列。BlockingBuffer要在多线程的环境中才能体现出它的价值,尤其是当我们需要实现某种流水线时这个BlockingBuffer很有用:每个流水线上的组件从上游的BlockingBuffer获取数据,处理后放到下一个BlockingBuffer中依次传递。BlockingBuffer的核心特色通俗点说就是如果你向它要东西,而它暂时还没有的话,你可以一直等待直至拿到为止。PriorityBuffer则提供比一般的先进先出Buffer更强的控制力:我们可以自定义Comparator给它,告诉它怎么判定它的成员的先后顺序,优先级最高的最先走。此外还有执行类型检查的TypedBuffer、或者不可改变的UnmodifiableBuffer等等
Map -- 在java.util.Map的基础上扩展的接口和类。BidiMap,直译就是双向Map,可以通过key找到value,也可以通过value找到key,这在我们日常的代码-名称匹配的时候很方便:因为我们除了需要通过代码找到名称之外,往往也需要处理用户输入的名称,然后获取其代码。需要注意的是BidiMap当中不光key不能重复,value也不可以。MultiMap,就是说一个key不在是简单的指向一个对象,而是一组对象,add()和remove()的时候跟普通的Map无异,只是在get()时返回一个Collection,利用MultiMap,我们就可以很方便的往一个key上放数量不定的对象,也就实现了一对多。LazyMap,意思就是这个Map中的键/值对一开始并不存在,当被调用到时才创建。
Collection -- 用也各collection之间的类型转换。典型的是TypedCollection,它实际上的作用就是提供一个decorate方法,我们传进去一个Collection和需要的类型甄别信息java.lang.Class,它给我们创建一个全新的强类型的Collection。(暂无样例代码,以后补充)
Comparator -- 提供了一些Comparator的实现类(都在org.apache.commons.collections.comparators包下面)BooleanComparator – 用于排序一组Boolean对象,指明先true还是先false;ComparableComparator – 用于排序实现了java.lang.Comparable接口的对象(我们常用的Java类如String、Integer、Date、Double、File、Character等等都实现了Comparable接口);ComparatorChain – 定义一组Comparator链,链中的Comparator对象会被依次执行;FixedOrderComparator – 用于定义一个特殊的顺序,对一组对象按照这样的自定义顺序进行排序;NullComparator – 让null值也可参与比较,可以设定为先null或者后null;
ReverseComparator – 将原有的Comparator效果反转;TransformingComparator – 将一个Comparator装饰为具有Transformer效果的Comparator。
Predicate -- 它以一个Object对象为参数,处理后返回一个boolean值,检验某个对象是否满足某个条件。Commons Collections也提供了一组定义好的Predicate类供我们使用,这些类都放在org.apache.commons.collections.functors包中。当然,我们也可以自定义Predicate,只要实现这个Predicate接口即可。
Transformer -- 我们有时候需要将某个对象转换成另一个对象供另一组方法调用,而这两类对象的类型有可能并不是出于同一个继承体系的,或者说出了很基本的Object之外没有共同的父类,或者我们根本不关心他们是不是有其他继承关系,甚至就是同一个类的实例只是对我们而言无所谓,我们为了它能够被后续的调用者有意义的识别和处理,在这样的情形,我们就可以利用Transformer。除了基本的转型Transformer之外,Commons Collections还提供了Transformer链和带条件的Transformer,使得我们很方便的组装出有意义的转型逻辑。
Closure -- 这一组接口和类提供一个操作对象的execute方法,为我们在处理一系列对象时可以将处理逻辑分离出来。ChainedClosure可以包装一组Closure作为整体执行;IfClosure在创建时需要提供给它一个Predicate和两个Closure,执行时先做Predicate判定再决定执行哪一个Closure;SwitchClosure跟SwitchTransformer类似,根据创建时传入的Predicate组和Closure组对应执行;WhileClosure则根据创建时传入的Predicate做判断,如果为true则执行Closure,直到Predicate返回false;等等。
Iterator -- java.util.Iterator接口定义了标准的Collection遍历方法,但是如果不做改变的使用它,我们得到的是从头到尾一次性的遍历。假如我们需要循环遍历,假如我们需要遍历某一段,假如我们需要遍历满足某些条件的元素,等等等等,我们就不能完全依赖于这个Iterator的标准实现了。除非我们宁可在此基础上在调用的代码中多加一些判断,不过这样的话代码就会显得混乱,时间长了就容易变得难以维护。Commons Collections的这一组Iterator为我们带来了便利。
1:该下载地址为九点软件园本地下载地址,commons-collections.jar下载包预览图如下:

2:下载包的正确包名:CommonsCollections_9a9m.com.zip
appinventor下载-App Inventor安卓编程软件v3.29.0720最新版下载
Jeecms最新版下载-Jeecms电脑版 v2012官方版下载
Easyprog最新版下载-Easyprog(凯迪恩编程软件) v1.9.5.1 官方版下载
Jenkins最新版下载-Jenkins长期支持版 v2.204.2官方版下载
LE-Log最新版下载-LE-Log(简单日志调试工具) v1.0官方版下载
UnRaid安装辅助工具最新版下载-UnRaid安装辅助工具 v6.8.1官方版下载
Zend Guard最新版下载-Zend Guard中文版v7.0官方版下载
LightProxy最新版下载-LightProxy(阿里抓包工具) v1.1.16官方版下载
Openfire最新版下载-Openfire服务器 v3.10.3官方版下载
Gradle最新版下载-Gradle中文版【JVM构建工具】 v5.5.1官方版下载
Gin-vue-admin免费版下载-Gin-vue-admin(后台管理系统框架) v2.4.0 官方版下载
Catfish下载-Catfish(鲶鱼)Blog v4.7.3官方版下载
gxworks2最新版下载-gxworks2【plc编程软件】 v1.89官方版下载
JetBrains CLion 2024电脑版下载-JetBrains CLion 2024(C/C++集成开发环境软件) v2024.3.3官方版下载
thonny官网下载-Thonny(Python编辑器) v3.3.13官方版下载
intellij idea 2017免费版下载-intellij idea 2017【java开发软件】v2017.3.5官方版下载
精益助手下载-精易编程助手 v3.97官方版下载
G2Plot下载-G2Plot(开箱即用的图表库) v2.4.23官方版下载
eclipse汉化包下载-Eclipse汉化包 2023官方最新版下载
NET代码保护工具下载-Red Gate SmartAssembly(NET代码保护工具) v8.1.0.4892免费版下载
e4a破解版下载-易安卓E4A(含破解补丁) v7.1.14免注册版下载500.44MB5096人在玩易安卓E4A是九点小编为大家推荐的一款非常好用并基于谷歌Simple语言、专为安卓系统开发应用打造的编程辅助工具软件,让安卓开发无限简单,可以说是安卓版本的易语言程序。
下载
火山软件开发平台下载安装-火山软件开发平台官网 V2.0绿色破解版下载1.2GB3922人在玩火山软件开发平台是九点软件园为编程开发用户分享的全新专业且深受诸多用户们喜爱的软件开发编程工具应用,是一种目的硬件设备无关、目的软件环境无关、易学易用实用、完全本地化的软件快速开发平台,欢迎有需要使用火山软件开发平台的朋友通过九点软件园下面地址来获取吧!
下载
appinventor下载-App Inventor安卓编程软件v3.29.0720最新版下载89.58M2501人在玩App Inventor是九点小编为程序员们推荐的一种基于Web的开发环境,用于创建Android应用程序。它是由麻省理工学院(MIT)开发的,旨在使移动应用程序开发变得更加易于学习和使用。
下载
米思齐编程软件下载-Mixly(米思齐图形化编程工具) v2.0 RC4官方版下载96.72MB1756人在玩Mixly For Arduino(米思齐图形化编程工具)windows版,基于Google的Blockly图形化编程框架开发,目的是为了配合Arduino UNO开发板套件使用,实现Arduino程序的图像化编程,Mixly自带Java8运行环境,用户直接双击mixly.vbs即可使用。
下载
星三好图形化编程软件下载-星三好图形化编程 v3.7.0官方版下载141MB1744人在玩星三好图形化编程软件是九点小编为大家推荐的一款功能强大,专业实用的优秀网络编程学习软件,用户能够通过积木形状模块来实现构成程序的命令和参数,只需要用鼠标拖动模块就能完成编程,欢迎下载使用。
下载
oracle 客户端下载-Oracle 11G客户端(32/64位) v11.2.0.4.0免费版下载1.95G1430人在玩oracle11g客户端 是从 Oralce 11gR2 的官方客户端安装包中而来的 Oracle 数据库客户端,专为企业设计,轻松运行大量数据库除了可以连接远程数据库以外,还包含 SQL Plus、JDBC Driver、ODBC Driver、Pro*C SDK、Net Configuration Assistant、Net Manager 等。
下载
易语言5.9破解版下载-易语言 V5.9完美破解版下载313.71MB1298人在玩易语言是九点小编为大家推荐的一款转为国人而设计的编程软件,由大连大有吴涛易语言软件开发有限公司推出,通过对易语言的学习,即便用户的英语水平不够好也能够轻松进行编程操作,让那些想编程且又不会英文的朋友们,提供了一条快速进入Windows程序编程的大门,支持基于汉语字、词编程的、全可视化的、跨主流操作系统平台的编程工具。
下载
thonny官网下载-Thonny(Python编辑器) v3.3.13官方版下载27.6MB1073人在玩Thonny是一款Python编辑器,基于python内置图形库tkinter开发出来的,支持Windows、Mac、Linux多平台,支持语法着色、代码自动补全、debug等功能,软件容易上手!
下载
navicat15破解版下载-Navicat 15 绿色版下载115MB1018人在玩Navicat 15是九点小编为大家推荐的一款功能强大的数据库管理软件,软件采用可视化操作方式,无需任何代码即可轻松完成数据库的增删改查、备份等操作,可以帮助用户更好的管理数据库。
下载
redpandadevc++下载-Red Panda(小熊猫C++) v2.10官方版下载9.9MB903人在玩小熊猫C++是九点小编为大家推荐的一款专业的编程软件工具,软件是专为程序开发人员推出,软件无需复杂的安装和配置,打开即可直接编辑程序文件;无需创建项目,点击工具栏上按钮即可编译、运行和调试程序即可!
下载