Collections工具类位于java.util包下,这个类包括了专门的静态方法,操作或返回集合对象,它包括了各种操作集合对象的算法。现在我们将对这个工具类的所有公共方法进行分析。
1,public static <T extends Comparable<? super T>> void sort(List<T> list)列表排序方法。
public static <T extends Comparable<? super T>> void sort(List<T> list) 该方法对指定的List对象排序,我们来看看这个方法的原代码: public static <T extends Comparable<? super T>> void sort(List<T> list) { Object[] a = list.toArray();//将List对象转换成Object数组 Arrays.sort(a);//用数组工具类进行排序 ListIterator<T> i = list.listIterator();//将List对象变成迭代对象 for (int j=0; j<a.length; j++) {//遍历排序后的数组 i.next(); i.set((T)a[j]);//重新赋值 } } 我们并不难发现,这个方法是先将List对象转换成数组,然后用数组工具类Arrays的sort方法进行排序,然后将排序后的数组元数重新赋值给这个List对象。
示例代码
由于这个方法与Arrays.sort()方法的作用类似,所以可以参考上篇文章《Java基础之---Arrays工具类》中的示例。
2, public static void reverse(List<?> list)对指定List进行反转,即倒排list里的所有元素。
示例代码
List listTest=new ArrayList(); listTest.add("1"); listTest.add("2"); listTest.add("3"); listTest.add("4"); listTest.add("5"); System.out.println("List对象listTest反转前内部元素为:"+listTest.toString()); Collections.reverse(listTest); System.out.println("List对象listTest反转后内部元素为:"+listTest.toString());
运行结果
List对象listTest反转前内部元素为:[1, 2, 3, 4, 5] List对象listTest反转后内部元素为:[5, 4, 3, 2, 1]
3,public static void shuffle(List<?> list) 随机打乱list对象中的元素。
示例代码
List listTest=new ArrayList(); listTest.add("1"); listTest.add("2"); listTest.add("3"); listTest.add("4"); listTest.add("5"); System.out.println("List对象listTest打乱前内部元素为:"+listTest.toString()); Collections.shuffle(listTest); System.out.println("List对象listTest打乱后内部元素为:"+listTest.toString());
运行结果
List对象listTest打乱前内部元素为:[1, 2, 3, 4, 5] List对象listTest打乱后内部元素为:[3, 1, 4, 2, 5]
4,public static void rotate(List<?> list, int distance)将指定的LIST对象中的元素按指定的距离旋转,当distance为正数时,从高位到低位旋转,当distance为负数时从低位向高位旋转。
示例代码
List listTest=new ArrayList(); listTest.add("1"); listTest.add("2"); listTest.add("3"); listTest.add("4"); listTest.add("5"); System.out.println("List对象listTest旋转前内部元素为:"+listTest.toString()); Collections.rotate(listTest, 2);//当2为负数时是低位向高位旋转 System.out.println("List对象listTest高位向低位旋转2位后内部元素为:"+listTest.toString());
运行结果
List对象listTest旋转前内部元素为:[1, 2, 3, 4, 5] List对象listTest高位向低位旋转2位后内部元素为:[3, 4, 5, 1, 2]
示例代码
List listTest=new ArrayList(); listTest.add("1"); listTest.add("2"); listTest.add("3"); listTest.add("4"); listTest.add("5"); System.out.println("List对象listTest旋转前内部元素为:"+listTest.toString()); Collections.rotate(listTest, -2);//当2为负数时是低位向高位旋转 System.out.println("List对象listTest低位向高位旋转2位后内部元素为:"+listTest.toString());
运行结果
List对象listTest旋转前内部元素为:[1, 2, 3, 4, 5] List对象listTest低位向高位旋转2位后内部元素为:[3, 4, 5, 1, 2]
我的网店,有劳各位参观参观 http://mrs-x.taobao.com/
相关推荐
559.557.JAVA基础教程_集合-Collections工具类常用方法的测试(559).rar
Java类集框架 最大单值操作父接口Collection及其子接口、子类: List接口、ArrayList类、Vector类、栈操作类Stack、链表操作类LinkList、队列操作...Collections工具类 Comparable接口、equals()方法、hashCode()方法
Java工具中的Collections工具类_动力节点Java学院整理.
这是commons-collections-3.2.jar的下载,它是commons中各集合类和工具类的封装包。因为commons-collections有很多版本,每个版本的环境又有些不同,所以版本对应是最好的,有需要3.2版本的可下载
Commons-Collections基于JDK中集合相关的类而开发,提供了新的接口、实现和工具。当我们在操作集合时,如有需要可以在该jar包中寻找是否已经有自己需要的功能。
Collections--集合工具类 83 Arrays—数组对象工具类 84 增强for循环 85 可变参数(...) 86 枚举:关键字 enum 86 自动拆装箱 86 泛型 87 <java.lang>System 89 <java.lang>Runtime 90 <java.lang>Math 90 <java....
在Java开发类库中,提供了很多工具类,我们即将学习最常见的工具类,比如对日期的操作,对集合的操作等。具体更多的工具类,请参考JavaDoc文档。 2. java.util.Date类 Date类包装了毫秒值,毫秒值表示自1970年1月1...
使用influxdb依赖的相关库jar包集合 包括converter-moshi-2.3.0.jar google-collections-1.0-rc1.jar gson-2.8.5.jar guava-27.0-jre.jar influxdb-java-2.4.jar logging-interceptor-3.11.0.jar moshi-1.5.0.jar ...
- commons-beanutils-1.8.0.jar - commons-collections-3.1.jar - commons-lang-2.5.jar - commons-logging-1.2.jar - ezmorph-1.0.6.jar - json-lib-2.4-jdk15.jar
* Collections 工具类是 Java 中的一个工具类,提供了多种集合操作方法。 * Collections 工具类的方法包括 sort()、binarySearch()、fill() 等。 本文总结了 Java 集合框架和相关类的知识点,包括 List 和 Map 接口...
主要介绍了java操作集合工具类Collections使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
里面包含所有java 使用json所需要的jar包,包含json-lib-2.4-jdk15,ezmorph-1.0.6,commons-logging-1.1.1,commons-lang-2.5,commons-beanutils-1.8.0,commons-collections-3.2.1
google公共工具类;google collections是google的工程师利用传说中的“20%时间”开发的集合库,它是对java.util的扩展,提供了很多实用的类来简化代码。google collections使用了范型,所以要求jdk1.5以上。
Collections 是 Java 中提供的一个工具类,提供了对集合类的操作方法,如 sort()、binarySearch()、max() 等。Collections 类提供了对集合类的搜索、排序、线程安全等操作。 四、如何选择集合类 在选择集合类时,...
6. 集合工具类Collections、Map集合、集合嵌套、不可变集合 7. Stream流、异常处理 8. Logback日志框架、阶段项目 9. File、方法递归、字符集、IO流(一) 10. IO流(二) 11. 多线程 12. 网络编程 13. 单元测试、...
java常用工具类说明 JDK本身提供的工具类 Guava提供的工具类 Apache common-Collection提供的工具类 JDK提供的工具类 Arrays Collections Objects Arrays是操作数组对象的工具类 Collections是操作集合对象的...
Collections工具类 141 Comparable接口 141 equals和hashcode方法 143 泛型 144 思考作业 145 上机作业 145 第八章 IO技术 146 为什么需要学习IO技术 146 基本概念 146 数据源 146 流的概念 146 第一个简单的IO流...
Collections工具类提供了大量针对Collection/Map的操作。这篇文章主要介绍了Collections工具类_动力节点Java学院整理,需要的朋友可以参考下
它是一个非常强大的工具,因为类可以实现多个接口,因此可以连接许多继承树,并使它们可以通过接口协定进行通信。 抽象类 特殊类型的Java类,使用抽象类代替创建大量方法和字段以及所有相关逻辑
json需要的6个jar包commons-beanutils-1.8.3/commons-collections-3.2.1/commons-lang-2.6/commons-logging-1.1.1/ezmorph-1.0.6/json-lib-2.4-jdk15