本章目标
掌握Collections与Collection接口的区别
掌握Collections类中提供的主要操作方法
Collections简介
在集合的应用开发中,集合的若干接口和若干个子类是最最常使用的,但是在JDK中提供了一种集合操作的工具类 —— Collections,可以直接通过此类方便的操作集合。
Collections类的定义:
——public class Collections extends Object
Collections类的常用方法及常量
实例操作一:返回不可变的集合
import java.util.Collections; import java.util.List; import java.util.Set; public class CollectionsDemo01 { public static void main(String[] args) { List<String> allList = Collections.emptyList();//返回不可变的空 List 集合 Set<String> allSet = Collections.emptySet();//返回不可变的空 List 集合 allList.add("Hello");//错误,无法加入 } /* 结果:提示表示不支持的方法异常,因为没有找到 add()方法的实现 * Exception in thread "main" java.lang.UnsupportedOperationException * at java.util.AbstractList.add(AbstractList.java:131) * at java.util.AbstractList.add(AbstractList.java:91) * at J031314.CollectionsDemo01.main(CollectionsDemo01.java:12) * */ }
实例操作二:为集合增加内容
import java.util.ArrayList; import java.util.Collections; import java.util.Iterator; import java.util.List; public class CollectionsDemo02 { public static void main(String[] args) { List<String> all = new ArrayList<String>();//实例化 List Collections.addAll(all, "Hello","World","Chaoyi");//增加内容 Iterator<String> iter = all.iterator();//实例化 Iterator 对象 while(iter.hasNext()){//迭代输出 System.out.print(iter.next()+"、");//输出内容 } } /* 结果: * Hello、World、Chaoyi、 * */ }
实例操作三:反转集合中的内容
import java.util.ArrayList; import java.util.Collections; import java.util.Iterator; import java.util.List; public class CollectionsDemo03 { public static void main(String[] args) { List<String> all = new ArrayList<String>();//实例化 List Collections.addAll(all, "Hello","World","Chaoyi");//增加内容 Collections.reverse(all);//内容反转保存 Iterator<String> iter = all.iterator();//实例化 Iterator 对象 while(iter.hasNext()){//迭代输出 System.out.print(iter.next()+"、");//输出内容 } } /* 结果: * Chaoyi、World、Hello、 * */ }
实例操作四:检索内容
import java.util.ArrayList; import java.util.Collections; import java.util.List; public class CollectionsDemo04 { public static void main(String[] args) { List<String> all = new ArrayList<String>();//实例化 List Collections.addAll(all, "Hello","World","Chaoyi");//增加内容 int point = Collections.binarySearch(all, "World");//检索内容 System.out.println("检索结果:"+point);//输出位置 point = Collections.binarySearch(all, "With");//检索内容,内容不存在 System.out.println("检索结果:"+point);//输出位置 } /* 结果: * 检索结果:1 * 检索结果:-2 * */ }
实例操作五:替换集合中的内容
import java.util.ArrayList; import java.util.Collections; import java.util.Iterator; import java.util.List; public class CollectionsDemo05 { public static void main(String[] args) { List<String> all = new ArrayList<String>();//实例化 List Collections.addAll(all, "Hello","World","Chaoyi");//增加内容 if(Collections.replaceAll(all, "Chaoyi", "name")){//替换内容 System.out.println("内容替换成功!");//输出信息 } System.out.print("替换之后的结果:");//输出信息 Iterator<String> iter = all.iterator();//实例化 Iterator 对象 while(iter.hasNext()){//迭代输出 System.out.print(iter.next()+"、");//输出内容 } } /* 结果: * 内容替换成功! * 替换之后的结果:Hello、World、name、 * */ }
实例操作六:集合排序
import java.util.ArrayList; import java.util.Collections; import java.util.Iterator; import java.util.List; public class CollectionsDemo06 { public static void main(String[] args) { List<String> all = new ArrayList<String>();//实例化 List Collections.addAll(all, "1、Hello","2、World","X、Chaoyi");//增加内容 Collections.addAll(all, "B、www.baidu.com");//增加内容 Collections.addAll(all, "A、www.so.com");//增加内容 System.out.print("排序之前的集合:");//输出信息 Iterator<String> iter = all.iterator();//实例化 Iterator 对象 while(iter.hasNext()){//迭代输出 System.out.print(iter.next()+"、");//输出内容 } Collections.sort(all);//集合排序 System.out.print("\n排序之后的集合:");//输出信息 iter = all.iterator();//实例化 Iterator 对象 while(iter.hasNext()){//迭代输出 System.out.print(iter.next()+"、");//输出内容 } } /* 结果: * 排序之前的集合:1、Hello、2、World、X、Chaoyi、B、www.baidu.com、A、www.so.com、 * 排序之后的集合:1、Hello、2、World、A、www.so.com、B、www.baidu.com、X、Chaoyi、 * */ }
实例操作七:交换指定位置的内容
import java.util.ArrayList; import java.util.Collections; import java.util.Iterator; import java.util.List; public class CollectionsDemo07 { public static void main(String[] args) { List<String> all = new ArrayList<String>();//实例化 List Collections.addAll(all, "1、Hello","2、World","3、Chaoyi");//增加内容 System.out.print("交换之前的集合:");//输出信息 Iterator<String> iter = all.iterator();//实例化 Iterator 对象 while(iter.hasNext()){//迭代输出 System.out.print(iter.next()+"、");//输出内容 } Collections.swap(all, 0, 2);//交换指定位置的内容 System.out.print("\n交换之后的集合:");//输出信息 iter = all.iterator();//实例化 Iterator 对象 while(iter.hasNext()){//迭代输出 System.out.print(iter.next()+"、");//输出内容 } } /* 结果: * 交换之前的集合:1、Hello、2、World、3、Chaoyi、 * 交换之后的集合:3、Chaoyi、2、World、1、Hello、 * */ }
相关推荐
Java操作集合工具类Collections使用详解 Java操作集合工具类Collections是Java语言中一个非常重要的工具类,主要用于操作Set、List和Map等集合。Collections工具类提供了大量方法对集合元素进行排序、查询和修改等...
集合工具类Collections是Java编程语言中的一个非常重要的辅助类,它提供了一系列静态方法,用于对各种集合框架(如List、Set、Queue等)进行操作。这些方法包括但不限于排序、查找、替换以及同步控制,极大地提高了...
Java工具类集合是Java开发中不可或缺的一部分,它们提供了一系列便捷的方法,帮助开发者高效地处理各种常见任务。在Java中,工具类通常被组织在各种包下,如`java.util`、`java.lang`、`java.io`等。下面将详细介绍...
下面是一个自定义的集合工具类 CollectionsCustom,用于对集合进行处理和操作。 CollectionsCustom工具类 CollectionsCustom工具类是一个自定义的集合工具类,用于对集合进行处理和操作。该类提供了一个reduce方法...
#### 四、集合工具类:Collections `Collections`是一个工具类,提供了一系列静态方法来操作集合对象,如排序、填充、反转等。 #### 五、特例:容器中装容器 - 实现方法:每个`Collection`都有`addAll()`方法,...
Collections集合工具类是Java编程语言中的一个重要组成部分,它提供了对集合框架的支持,包括排序、查找、复制、反转等操作。在处理ArrayList、LinkedList等List类型的集合时,Collections工具类的`sort()`方法非常...
- `ListUtils`和`MapUtils`:Apache Commons Collections中的工具类,提供了集合的创建、合并、分割等高级操作。 6. **反射工具类**: - `ClassUtils`:Apache Commons Lang库中的工具类,提供类的加载、属性检查...
Java集合框架是Java编程中不可或缺的部分,而Collections工具类则是这个框架中的一个重要工具,它提供了大量静态方法,用于操作各种集合接口(如List、Set、Queue等)的实例。本教程将深入探讨Collections工具类中的...
这三款库在Java开发中应用广泛,特别是在处理对象属性、集合操作和通用工具类时。它们使得代码更加简洁,减少了重复工作,并提高了代码的可读性和可维护性。在实际项目中,根据需求选择合适版本的Apache Commons库,...
Apache Commons Collections是Java开发中常用的一个开源库,它为Java集合框架提供了大量的实用工具类和扩展。"commons-collections-3.2.jar"是该库的版本3.2的实现,它包含了一系列高效、实用且功能丰富的数据结构和...
这是为了方便大家了解集合类的相关知识所找的一个MarkDown文档,读者可以通过阅读了解各种子类集合的实现原理,红黑树的实现也会有所介绍.
3. **集合工具类**:Java的Collections类提供了集合的一些基本操作,而Guava库则提供了更加强大的集合处理功能,如Multimap、Multiset、Immutable集合等。 4. **数学计算工具类**:如Apache Commons Math提供了各种...
6. **集合工具类**:包括`CollectionUtils`、`ListUtils`、`SetUtils`等,提供了一套全面的静态方法,用于集合的比较、合并、查找、排序等操作。 7. **类型安全的泛型**:Collections 4.4全面支持Java泛型,确保了...
Collections 是 Java 中的一个集合工具类,提供了多种操作集合的方法。下面是对 Collections 中部分方法的详细解释。 概述 Collections 类是一个集合工具类,它提供了多种操作集合的方法,如查找、排序、线程安全...
3. **集合工具类**: - `Collections`:Java 核心库中的工具类,提供了对集合框架的操作,如排序、反转、填充、查找等。 - `Guava` 库中的 `Collections2`, `Lists`, `Sets`, `Multisets` 等:Google 的 Guava 库...
在Java编程语言中,工具类集合是一系列实用的类,它们提供了各种通用功能,帮助开发者更高效地编写代码。这些工具类通常包含在Java的`java.util`以及其他相关的包中,如`java.text`,`javax.imageio`,`javax.xml`等...
一、 Collections 工具类 1. 排序:Collections.sort() 方法可以实现升序和降序排序。 例如: List list = new ArrayList(); list.add(2); list.add(1); list.add(3); Collections.sort(list);//升序 System.out....
Guava 是一个 Google 的基于java1.6的类库集合的扩展项目,包括 collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, 等等. 这些高质量的 API 可以使你...
- `Collections`类:针对集合框架的工具类,包含排序、查找、反转等方法。 2. **java.time包**(Java 8引入):提供了新的日期和时间API,如`LocalDate`、`LocalTime`、`LocalDateTime`、`ZonedDateTime`等,比旧...