实例介绍
fastutil通过提供具有较小内存占用和快速访问和插入功能的特定类型的映射、集合、列表和队列,扩展了Java™ Collections Framework。自8.5.5版本以来,fastutil被拆分为两个jar包以方便使用:fastutil-core.jar包含基于整数、长整数、双精度浮点数和对象的数据结构;fastutil.jar是经典的发布版本,包含所有类。请注意,核心类在标准jar包中也有副本,因此如果您依赖于两者(例如,因为传递依赖关系),您应该排除核心jar包。以前的拆分版本将在不同的jar包中提供不同的类,但是合理地管理依赖关系证明是不可能的。您还可以使用find-deps.sh shell脚本创建一个小型的定制fastutil jar包(您可以将其放入您的repo、本地maven repo等),它具有轻微的先决条件,只需要jdeps工具(与JDK 8捆绑)。它可用于识别您的项目使用的所有fastutil类,并构建一个仅包含必要类的最小化jar包。构建首先必须生成源代码以获取实际的Java源代码。然后,ant jar将生成一个单独的jar文件;ant javadoc将生成API文档;ant junit将运行单元测试。如果您想获得上述三个jar包,您必须运行split.sh脚本,然后运行ant osgi-rest。Java源代码是使用C预处理器生成的。gencsource.sh脚本读取驱动程序文件,即使用一些预处理器定义符号和一些条件编译的Java源代码,并生成一个(虚假的)C源代码,其中包括驱动程序代码和一些定义,以自定义环境。
【实例截图】
【核心代码】
文件清单
└── fastutil-1197d8e2b5e1ae70d222f4ce7e0cefae4386278f
├── bnd
│ └── biz.aQute.bnd-5.2.0.jar
├── build.properties
├── build.xml
├── CHANGES
├── drv
│ ├── AbstractBidirectionalIterator.drv
│ ├── AbstractBigList.drv
│ ├── AbstractBigListIterator.drv
│ ├── AbstractCollection.drv
│ ├── AbstractComparator.drv
│ ├── AbstractFunction.drv
│ ├── AbstractIterator.drv
│ ├── AbstractList.drv
│ ├── AbstractListIterator.drv
│ ├── AbstractMap.drv
│ ├── AbstractPriorityQueue.drv
│ ├── AbstractSet.drv
│ ├── AbstractSortedMap.drv
│ ├── AbstractSortedSet.drv
│ ├── AbstractSpliterator.drv
│ ├── AbstractStack.drv
│ ├── ArrayFIFOQueue.drv
│ ├── ArrayFrontCodedBigList.drv
│ ├── ArrayFrontCodedList.drv
│ ├── ArrayIndirectPriorityQueue.drv
│ ├── ArrayList.drv
│ ├── ArrayMap.drv
│ ├── ArrayPriorityQueue.drv
│ ├── Arrays.drv
│ ├── ArraySet.drv
│ ├── AVLTreeMap.drv
│ ├── AVLTreeSet.drv
│ ├── BidirectionalIterable.drv
│ ├── BidirectionalIterator.drv
│ ├── BigArrayBigList.drv
│ ├── BigArraysCommon.drv
│ ├── BigArrays.drv
│ ├── BigArraysFragment.drv
│ ├── BigList.drv
│ ├── BigListIterator.drv
│ ├── BigListIterators.drv
│ ├── BigLists.drv
│ ├── BigSpliterators.drv
│ ├── BinaryOperator.drv
│ ├── BinIO.drv
│ ├── BinIOFragment.drv
│ ├── Collection.drv
│ ├── Collections.drv
│ ├── Comparator.drv
│ ├── Comparators.drv
│ ├── Consumer.drv
│ ├── Function.drv
│ ├── Functions.drv
│ ├── Hash.drv
│ ├── HeapIndirectPriorityQueue.drv
│ ├── HeapPriorityQueue.drv
│ ├── Heaps.drv
│ ├── HeapSemiIndirectPriorityQueue.drv
│ ├── ImmutableList.drv
│ ├── ImmutablePair.drv
│ ├── ImmutableSortedPair.drv
│ ├── IndirectHeaps.drv
│ ├── IndirectPriorityQueue.drv
│ ├── Iterable.drv
│ ├── Iterables.drv
│ ├── Iterator.drv
│ ├── Iterators.drv
│ ├── LinkedOpenCustomHashMap.drv
│ ├── LinkedOpenCustomHashSet.drv
│ ├── LinkedOpenHashMap.drv
│ ├── LinkedOpenHashSet.drv
│ ├── List.drv
│ ├── ListIterator.drv
│ ├── Lists.drv
│ ├── Map.drv
│ ├── MappedBigList.drv
│ ├── Maps.drv
│ ├── MutablePair.drv
│ ├── OpenCustomHashMap.drv
│ ├── OpenCustomHashSet.drv
│ ├── OpenHashBigSet.drv
│ ├── OpenHashMap.drv
│ ├── OpenHashSet.drv
│ ├── Pair.drv
│ ├── Predicate.drv
│ ├── PriorityQueue.drv
│ ├── PriorityQueues.drv
│ ├── RBTreeMap.drv
│ ├── RBTreeSet.drv
│ ├── SemiIndirectHeaps.drv
│ ├── Set.drv
│ ├── Sets.drv
│ ├── SortedMap.drv
│ ├── SortedMaps.drv
│ ├── SortedPair.drv
│ ├── SortedSet.drv
│ ├── SortedSets.drv
│ ├── Spliterator.drv
│ ├── Spliterators.drv
│ ├── Stack.drv
│ ├── StripedOpenHashMap.drv
│ ├── TextIO.drv
│ ├── TextIOFragment.drv
│ └── UnaryOperator.drv
├── fastutil.bnd
├── fastutil-core.bnd
├── find-deps.sh
├── gencsource.sh
├── guava
│ └── it
│ └── unimi
│ └── dsi
│ └── fastutil
│ ├── ints
│ │ ├── Int2IntOpenHashMapGuavaTest.java
│ │ └── IntSetGuavaTest.java
│ └── objects
│ ├── Object2ObjectOpenHashMapGuavaTest.java
│ ├── Object2ObjectRBTreeMapGuavaTest.java
│ └── ObjectOpenHashSetGuavaTest.java
├── ivy.xml
├── lib
│ ├── hamcrest-all-1.3.jar
│ └── junit-4.13.jar
├── LICENSE-2.0
├── makefile
├── pom-core-model.xml
├── pom-model.xml
├── README.md
├── REVISION.md
├── split.sh
├── src
│ ├── it
│ │ └── unimi
│ │ └── dsi
│ │ └── fastutil
│ │ ├── AbstractIndirectPriorityQueue.java
│ │ ├── AbstractPriorityQueue.java
│ │ ├── AbstractStack.java
│ │ ├── Arrays.java
│ │ ├── BidirectionalIterator.java
│ │ ├── BigListIterator.java
│ │ ├── BigList.java
│ │ ├── BigSwapper.java
│ │ ├── booleans
│ │ │ └── package-info.java
│ │ ├── bytes
│ │ │ └── package-info.java
│ │ ├── chars
│ │ │ └── package-info.java
│ │ ├── doubles
│ │ │ └── package-info.java
│ │ ├── floats
│ │ │ └── package-info.java
│ │ ├── Function.java
│ │ ├── HashCommon.java
│ │ ├── Hash.java
│ │ ├── IndirectPriorityQueue.java
│ │ ├── IndirectPriorityQueues.java
│ │ ├── ints
│ │ │ └── package-info.java
│ │ ├── io
│ │ │ ├── FastBufferedInputStream.java
│ │ │ ├── FastBufferedOutputStream.java
│ │ │ ├── FastByteArrayInputStream.java
│ │ │ ├── FastByteArrayOutputStream.java
│ │ │ ├── FastMultiByteArrayInputStream.java
│ │ │ ├── InspectableFileCachedInputStream.java
│ │ │ ├── MeasurableInputStream.java
│ │ │ ├── MeasurableOutputStream.java
│ │ │ ├── MeasurableStream.java
│ │ │ ├── package-info.java
│ │ │ └── RepositionableStream.java
│ │ ├── longs
│ │ │ └── package-info.java
│ │ ├── objects
│ │ │ └── package-info.java
│ │ ├── package-info.java
│ │ ├── Pair.java
│ │ ├── PriorityQueue.java
│ │ ├── PriorityQueues.java
│ │ ├── SafeMath.java
│ │ ├── shorts
│ │ │ └── package-info.java
│ │ ├── Size64.java
│ │ ├── SortedPair.java
│ │ ├── Stack.java
│ │ └── Swapper.java
│ └── overview.html
├── test
│ └── it
│ └── unimi
│ └── dsi
│ └── fastutil
│ ├── ArraysTest.java
│ ├── BigArraysTest.java
│ ├── bytes
│ │ ├── ByteArrayFrontCodedBigListTest.java
│ │ ├── ByteArrayFrontCodedListTest.java
│ │ └── ByteArraysTest.java
│ ├── chars
│ │ ├── CharArrayFrontCodedListTest.java
│ │ └── CharArraysTest.java
│ ├── doubles
│ │ ├── DoubleArraysTest.java
│ │ ├── DoubleBigArraysTest.java
│ │ └── DoubleOpenHashSetTest.java
│ ├── floats
│ │ ├── FloatArraysTest.java
│ │ └── FloatOpenHashSetTest.java
│ ├── HashCommonTest.java
│ ├── IntIntPairTest.java
│ ├── ints
│ │ ├── AbstractInt2IntMapTest.java
│ │ ├── AbstractIntCollectionTest.java
│ │ ├── Int2IntArrayMapTest.java
│ │ ├── Int2IntLinkedOpenHashMapTest.java
│ │ ├── Int2IntMapGenericArrayTest.java
│ │ ├── Int2IntMapGenericAVLTest.java
│ │ ├── Int2IntMapGenericDefaultTest.java
│ │ ├── Int2IntMapGenericLinkedOpenHashTest.java
│ │ ├── Int2IntMapGenericOpenHashTest.java
│ │ ├── Int2IntMapGenericRBTest.java
│ │ ├── Int2IntMapGenericTest.java
│ │ ├── Int2IntMapsTest.java
│ │ ├── Int2IntOpenCustomHashMapTest.java
│ │ ├── Int2IntOpenHashMapTest.java
│ │ ├── Int2ObjectFunctionTest.java
│ │ ├── Int2ObjectMapGenericArrayTest.java
│ │ ├── Int2ObjectMapGenericAVLTest.java
│ │ ├── Int2ObjectMapGenericDefaultTest.java
│ │ ├── Int2ObjectMapGenericLinkedOpenHashTest.java
│ │ ├── Int2ObjectMapGenericOpenHashTest.java
│ │ ├── Int2ObjectMapGenericRBTest.java
│ │ ├── Int2ObjectMapGenericTest.java
│ │ ├── Int2ObjectMapTest.java
│ │ ├── IntArrayFIFOQueueTest.java
│ │ ├── IntArrayFrontCodedListTest.java
│ │ ├── IntArrayIndirectPriorityQueueTest.java
│ │ ├── IntArrayListTest.java
│ │ ├── IntArrayPriorityQueueTest.java
│ │ ├── IntArraySetTest.java
│ │ ├── IntArraysTest.java
│ │ ├── IntAVLTreeSetTest.java
│ │ ├── IntBigArrayBigListTest.java
│ │ ├── IntBigArraysTest.java
│ │ ├── IntBigListsTest.java
│ │ ├── IntCollectionsTest.java
│ │ ├── IntHeapPriorityQueueTest.java
│ │ ├── IntHeapSemiIndirectPriorityQueueTest.java
│ │ ├── IntImmutableListTest.java
│ │ ├── IntLinkedOpenCustomHashSetTest.java
│ │ ├── IntLinkedOpenHashSetTest.java
│ │ ├── IntListsTest.java
│ │ ├── IntListTest.java
│ │ ├── IntMappedBigListTest.java
│ │ ├── IntOpenCustomHashSetTest.java
│ │ ├── IntOpenHashBigSetTest.java
│ │ ├── IntOpenHashSetTest.java
│ │ ├── IntRBTreeSetTest.java
│ │ ├── IntSemiIndirectHeapsTest.java
│ │ ├── IntSetsTest.java
│ │ ├── IntSetTest.java
│ │ ├── IntSpliteratorsTest.java
│ │ └── StripedInt2IntOpenHashMapTest.java
│ ├── io
│ │ ├── BinIOTest.java
│ │ ├── FastBufferedInputStreamTest.java
│ │ ├── FastBufferedOutputStreamTest.java
│ │ ├── FastByteArrayOutputStreamTest.java
│ │ ├── FastMultiByteArrayInputStreamTest.java
│ │ ├── InspectableFileCachedInputStreamTest.java
│ │ └── TextIOTest.java
│ ├── longs
│ │ ├── LongArrayFrontCodedListTest.java
│ │ ├── LongArraysTest.java
│ │ ├── LongOpenHashBigSetTest.java
│ │ └── LongSetTest.java
│ ├── MainRunner.java
│ ├── objects
│ │ ├── AbstractObject2IntFunctionTest.java
│ │ ├── Object2IntArrayMapTest.java
│ │ ├── Object2IntOpenHashMapTest.java
│ │ ├── Object2ObjectArrayMapTest.java
│ │ ├── Object2ObjectOpenHashMapTest.java
│ │ ├── ObjectArrayListTest.java
│ │ ├── ObjectArrayPriorityQueueTest.java
│ │ ├── ObjectArraySetTest.java
│ │ ├── ObjectArraysTest.java
│ │ ├── ObjectAVLTreeSetTest.java
│ │ ├── ObjectBigArrayBigListTest.java
│ │ ├── ObjectBigArraysTest.java
│ │ ├── ObjectHeapPriorityQueueTest.java
│ │ ├── ObjectImmutableListTest.java
│ │ ├── ObjectListTest.java
│ │ ├── ObjectOpenCustomHashSetTest.java
│ │ ├── ObjectOpenHashBigSetTest.java
│ │ ├── ObjectOpenHashSetTest.java
│ │ ├── ObjectRBTreeSetTest.java
│ │ ├── ObjectSetsTest.java
│ │ ├── ObjectSetTest.java
│ │ ├── Reference2ReferenceArrayMapTest.java
│ │ └── ReferenceArraySetTest.java
│ ├── PairTest.java
│ └── shorts
│ ├── ShortArrayFrontCodedListTest.java
│ ├── ShortArrayListTest.java
│ └── ShortArraysTest.java
├── test.sh
└── TODO
40 directories, 272 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论