Java中Collections工具类的使用

Java中Collections工具类的使用

Collections类

1.概述

Collections被称为 “集合操作的工具类” 。此类完全由在Collection上进行操作或返回Collection的静态方法组成。它包含在Collection上操作的多态算法,即“包装器”,包装器返回由指定Collection支持的新Collection,以及少数其他内容。

2.常用方法摘要

修饰语和类型 方法 描述
static boolean addAll(Collection<? super T> c, T… elements) 将所有指定的元素添加到指定的集合
static int binarySearch(List<? extends Comparable<? super T>> list, T key) 使用二叉搜索算法搜索指定对象的指定列表
static void copy(List<? super T> dest, List<? extends T> src) 将所有元素从一个列表复制到另一个列表中
static <T extends Comparable<? super T>> sort(List list) 根据其元素的自然顺序对指定的列表进行排序
static void fill(List<? super T> list, T obj) 用指定的元素代替指定列表的所有元素
static int frequency(Collection<?> c, Object o) 返回指定集合中与指定对象相等的元素数
static int indexOfSubList(List<?> source, List<?> target) 返回指定源列表中指定目标列表的第一次出现的起始位置,如果没有此类事件,则返回-1
static int lastIndexOfSubList(List<?> source, List<?> target) 返回指定源列表中指定目标列表的最后一次出现的起始位置,如果没有此类事件则返回-1
static ArrayList list(Enumeration e) 返回一个数组列表,其中包含由枚举返回的顺序由指定的枚举返回的元素
static boolean replaceAll(List list, T oldVal, T newVal) 将列表中一个指定值的所有出现替换为另一个
static void reverse(List<?> list) 反转指定列表中元素的顺序

这里是部分常用方法,更多方法和详细介绍请查阅官方JDK帮助文档。

3.使用

总体来说比较简单,容易理解。下面通过示例代码说明此集合工具类的用法:

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

/* * 集合操作的工具类 * Collections */
public class CollectionsDemo {
   

	public static void main(String[] args) {
   
		function();
		function_1();
		function_2();
	}
	/* * Collections.shuffle方法 * 对List集合中的元素,进行随机排列 */
	public static void function_2(){
   
		List<Integer> list = new ArrayList<Integer>();
		list.add(1);
		list.add(5);
		list.add(9);
		list.add(11);
		list.add(8);
		list.add(10);
		list.add(15);
		list.add(20);	
		System.out.println(list);
		
		//调用工具类方法shuffle对集合随机排列
		Collections.shuffle(list);
		System.out.println(list);
	}
	
	/* * Collections.binarySearch静态方法 * 对List集合进行二分搜索,方法参数,传递List集合,传递被查找的元素 */
	public static void function_1(){
   
		List<Integer> list = new ArrayList<Integer>();
		list.add(1);
		list.add(5);
		list.add(8);
		list.add(10);
		list.add(15);
		list.add(20);
		//调用工具类静态方法binarySearch
		int index = Collections.binarySearch(list, 16);
		System.out.println(index);
	}
	
	/* * Collections.sort静态方法 * 对于List集合,进行升序排列 */
	public static void function(){
   
		//创建List集合
		List<String> list = new ArrayList<String>();
		list.add("ewrew");
		list.add("qwesd");
		list.add("Qwesd");
		list.add("bv");
		list.add("wer");
		System.out.println(list);
		//调用集合工具类的方法sort
		Collections.sort(list);
		System.out.println(list);
	}
}

本文来源MrKorbin,由架构君转载发布,观点不代表Java架构师必看的立场,转载请标明来源出处:https://javajgs.com/archives/25323

发表评论