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/
相关推荐
这三款库在Java开发中应用广泛,特别是在处理对象属性、集合操作和通用工具类时。它们使得代码更加简洁,减少了重复工作,并提高了代码的可读性和可维护性。在实际项目中,根据需求选择合适版本的Apache Commons库,...
3. 工具类: - **Collections**: 提供了一系列静态方法,用于操作集合,如排序、查找、填充、反转等。 - **Arrays**: 用于处理数组,包含排序、比较、复制等功能。 - **ArrayList/LinkedList**: 分别提供了基于...
Java开发包是程序员进行Java应用程序开发的基础工具,它包含了运行和构建Java程序所需的各种库、API文档以及开发工具。在给定的压缩包"Java-Development-Kits-Collections.zip_gwt-console-rpc.jar_mchang"中,我们...
Java集合框架还包含了一些工具类,如Collections和Arrays,它们提供了各种实用方法,如排序、复制、反转和查找集合中的特定元素。此外,Set和List接口都有一个叫做CopyOnWriteArrayList和CopyOnWriteArraySet的特殊...
Commons Collections和Apache BeanUtils是Java开发中常用的两个库,它们为开发者提供了丰富的工具类和功能,使得处理集合对象和Bean属性变得更加便捷。这两个库在Java Web开发中扮演着重要角色,尤其是在构建MVC框架...
Apache Commons Collections是一个Java库,它提供了大量的集合框架增强功能,扩展了Java标准库中的集合类。这个库在Java开发中非常实用,因为它包含了各种高效、功能丰富的数据结构和算法,可以显著提高代码的效率和...
Apache Commons Collections库则是Java集合框架的扩展,它提供了大量实用的集合工具类和算法,如列表、映射、队列、堆栈等的增强。3.2.1版本同样是一个成熟的版本,包含了许多优化和改进。使用Collections库,开发者...
9. **并行数组操作**:`java.util.Arrays`和`java.util.Collections`类增加了并行处理的方法,如`parallelSort()`,利用多核处理器进行高效排序。 Android开发通常依赖于特定版本的JDK,尽管Android Studio现在推荐...
6. **集合工厂**:`Factory`接口和相关的工具类可以方便地创建集合实例,避免了每次创建时的重复代码。 7. **堆栈和队列**:`QueueUtils`和`StackUtils`提供了对队列和堆栈操作的支持,如创建队列和堆栈,以及进行...
Apache Commons Collections是Apache软件基金会的一个项目,它提供了一系列强大的、用于处理Java集合框架的工具类和算法。在这个项目中,`commons-collections-3.2.1.jar`是一个重要的库文件,包含了丰富的功能,...
Commons Collections是Apache软件基金会开发的一个Java库,主要提供对集合框架的增强和扩展。这个库是Java标准集合接口的补充,增加了许多实用的功能,提高了代码的可读性和效率。"commons-collections4-4.1.jar"是...
### Java工具类详解:正则表达式应用及Arrays与Collections常用功能 ...以上就是关于Java中工具类-正则表达式的详细介绍,这些工具类和方法在日常开发中非常实用,掌握它们可以帮助开发者更加高效地完成任务。
Java集合框架是Java编程中不可或缺的部分,而Collections工具类则是这个框架中的一个重要工具,它提供了大量静态方法,用于操作各种集合接口(如List、Set、Queue等)的实例。本教程将深入探讨Collections工具类中的...
Apache Commons Collections是一个强大的Java集合框架扩展库,它为Java的内置集合类提供了丰富的功能增强。这个"commons-collections4-4.2-bin"是Apache Commons Collections的第4版的第2次更新,是一个二进制分发包...
Apache Commons Collections是一个Java库,包含了丰富的集合操作工具和算法,为Java平台的开发提供了大量的实用类和接口。这个"commons-collections-3.2.2-"版本是该库的一个特定发行版,主要用于解决WebLogic服务器...
这个"commons-collections4-4.4-bin.zip"文件包含了Apache Commons Collections的4.4版本,它是该库的一个稳定版本,提供了一系列增强和额外的工具类,以帮助开发者更高效地处理Java集合。 1. **接口增强**: ...
Java工具类集合是Java开发中不可或缺的一部分,它们提供了一系列便捷的方法,帮助开发者高效地处理各种常见任务。在Java中,工具类通常被组织在各种包下,如`java.util`、`java.lang`、`java.io`等。下面将详细介绍...
- **Collections**:是一个工具类,提供了一系列静态方法来操作集合。 ### 15. assert 关键字 `assert` 语句用于断言某个条件为真,主要用于调试阶段检测错误。如果表达式为 false,则会抛出 AssertionError 异常...
11. **多线程**:讲解线程的创建、同步机制(synchronized关键字、wait/notify机制、Lock接口)、并发工具类如ExecutorService和Future。 12. **异常处理**:介绍异常的分类、抛出和捕获,以及如何使用try-catch-...
Apache Commons Collections,简称Collections,是Apache软件基金会提供的一款开源Java库,它为Java集合框架提供了大量的实用工具类和扩展功能。在Java开发中,Collections库是不可或缺的一部分,极大地丰富了对数据...