Collection和Collectons的区别即Collections的常用方法

package com.sjm.collection;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/*
 * Collection 和 Collections的区别。
 *		Collections是一个个java.util下的工具类,它包含有各种有关集合操作的静态方法。
 *		Collection是个java.util下的接口,它是各种集合结构的父接口。
 *
 * Collections中常用的方法
 * 	1.同步线程
 * 		1>synchronizedCollection(Collection c) 返回指定 collection 支持的同步(线程安全的)collection。 
 * 		2>synchronizedList(List list) 返回指定列表支持的同步(线程安全的)列表。 
 * 		3>synchronizedMap(Map m)  返回由指定映射支持的同步(线程安全的)映射。 
 *		4>synchronizedSet(Set s) 返回指定 set 支持的同步(线程安全的)set。
 * 	2.sort  对集合进行排序
 * 	3.reverse 反转指定集合中元素的顺序。
 * 	4.shuffle 对集合中的元素进行随机排序
 * 	5.max,min 获取集合中的最大、最小值
 * 	6.binarySearch 使用二分搜索法搜索指定列表,以获得指定对象。
 * 	7.replaceAll 使用另一个值替换列表中出现的所有某一指定值
 */
public class CollectionsTest {
	public static void main(String[] args) {
		//同步线程
		Map map = new HashMap(); //线程不安全的
		Map synchrinizedMap = Collections.synchronizedMap(map); //利用Collections中的synchronizedMap()方法将map转为线程安全的
		
		List list = new ArrayList();
		list.add(-10);
		list.add(10);
		list.add(3);
		list.add(5);
		//sort
		Collections.sort(list); //sort对集合进行排序
		System.out.println(list); //结果:[-10, 3, 5, 10]
		
		String[] arr = {"a", "C", "abc"};
		// asList  该方法可以直接将一个数组转换为list集合,但是该集合是 [只读的],不要对得到的集合进行增删改
		List asList = Arrays.asList(arr);
		System.out.println(asList);  // 结果:[a, C, abc]
		
		//reverse
		Collections.reverse(list);
		System.out.println(list); //结果:[10, 5, 3, -10]
		
		//shuffle
		Collections.shuffle(list);
		System.out.println(list);  //结果:[3, -10, 5, 10]
		
		//max、min
		System.out.println(Collections.max(list)); //结果:  10
		System.out.println(Collections.min(list)); //结果:-10
		
		//binarySearch
		Collections.sort(list);
		System.out.println(Collections.binarySearch(list, 10));  //结果:3
		
		//replaceAll
		Collections.replaceAll(list, -10, 1000);
		System.out.println(list);   //结果:[1000, 3, 5, 10]
	}
}

 

你可能感兴趣的:(Collection和Collectons的区别即Collections的常用方法)