commons-collections.jar
- 软件大小:471KB
- 更新日期:2017/4/19
- 软件语言:简体
- 软件类别:JAVA相关
- 软件授权:免费软件
- 软件官网:http://www.pc6.com
- 适用平台:WinAll
软件介绍精品推荐相关视频人气软件相关文章评论0下载地址
commons-collections.jar包是一款java开发中必备的一款jar包如果缺少了这款了commons-collections.jar包java开发将变得寸步难行下载commons-collections.jar使用吧。。
相关软件软件大小版本说明下载地址
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为我们带来了便利。
精品推荐
其他版本下载
相关视频
-
没有数据
人气软件
jdk1.7 64位137M
/简体java编程实用工具箱1.3M
/简体4个经典java游戏小程序126KB
/简体
厂商其他下载
- 电脑版安卓版IOS版Mac版
-
快车(FlashGet)7.4M
/简体VeryCD 电驴(easyMule)4.1M
/简体Opera浏览器76.4M
/简体光影魔术手19.1M
/简体360安全浏览器7.044.6M
/简体格式工厂97.1M
/多国语言[中文]365桌面日历9.6M
/简体千千静听播放器18.5M
/简体福昕PDF阅读器(Foxit Reader)95.7M
/简体快播(QvodPlayer)12.2M
/简体
未上锁的房间2310.5M
/英文优志愿57.2M
/简体触漫106.0M
/简体北京公交113.4M
/简体迷你世界646M
/简体江苏高考16.0M
/简体小米枪战1.31G
/简体腾讯疯狂贪吃蛇48.3M
/简体大富豪3136.0M
/简体腾讯街头篮球544.2M
/简体
跑跑卡丁车41.4M
/简体高考志愿君app63.9M
/简体传奇战域手游491M
/简体像素车超改iphone版370.4M
/简体代号英雄iphone版371.2M
/简体人vs导弹游戏iphone版224.5M
/简体北京公交16.5M
/简体熊猫看书iPad版32.9M
/简体影音先锋iPad版0KB
/简体WPS iPad版228M
/简体
IINA Mac版78.9M
/英文多宝游戏盒Mac版90.2M
/简体eZip Mac版15.7M
/简体飞书for Mac337M
/简体ios5.1固件802M
/简体Adobe Photoshop CS6 Mac版1.05G
/简体英雄联盟Mac版66.2M
/英文magican for mac12.1M
/简体虾歌Mac版9M
/简体欧朋浏览器for mac198.6M
/简体
相关文章
- 雷军晒小米13全方位外观图:比iPhone 14手感好!
- iPhone 14 Pro充电漏电?苹果客服:对人没伤害
- iPhone 14 Plus上市破发:坐等双11继续降价?
- 苹果正式发布iPhone 14 Pro系列:药丸屏变身灵动岛!
- 苹果2022秋季发布会正式官宣:iPhone 14来了!
- iPhone 14 mini最新爆料:仍将发布或5199元起!
- iPhone 14或于9月23日上市:Pro版涨价8999元起?
- iPhone 14入门版售价曝光:不涨价?全新配色、快充升级至30W
- iPhone 14 Pro AOD息屏显示功能演示:比安卓更酷更高级
- 曝iPhone15全系采用感叹号屏:彻底告别刘海屏!
查看所有评论>>网友评论共0条
热门关键词
精彩评论