核心类库-集合-Collections工具类常用方法的测试

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

import org.junit.Test;

/*
 reverse(List):反转 List 种元素的顺序
 shuffle(List):对 List 集合元素进行随机排序
 sort(List):根据元素的自然顺序对指定 List 集合元素按升序排序
 sort(List,Comparator):根据指定的 Comparator 产生的顺序对 List 集合元素进行排序
 swap(List, int ,int):将指定 List 集合中的 i处元素和 j处元素进行交换
 
 查找、替换
 Object max(Collection):根据元素的自然顺序,返回给定集合中的最大元素
 Object max(Collection, Comparator):根据 Comparator 指定的顺序,返回给定集合中的最大元素
 Object min(Collection)
 Object min(Collection, Comparator)
 int frequency(Collection, Object):返回指定集合中指定元素的出现次数
 void copy(List dest, List src):将 src 中的内容复制到 dest 中
 boolean replaceAll(List list, Object oldVal, Object newVal):使用新值替换List对象的所有旧值
 
 */
public class Collections {

	@Test
	public void test1() {
		List list = new ArrayList();
		list.add(123);
		list.add(43);
		list.add(765);
		list.add(-97);
		list.add(0);
		
		System.out.println(list);
		
//		Collections.reverse(list);
//		Collections.shuffle(list);
//		Collections.sort(list);
		Collections.swap(list,1,2);
		int frequency = Collections.frequency(list, 123);
		
		System.out.println(list);
		
	}
	
	@Test
	public void test2() {
		List list = new ArrayList();
		list.add(123);
		list.add(43);
		list.add(765);
		list.add(-97);
		list.add(0);
		
		//报异常:IndexOutOfBoundsExcepion("Source does not fit in dest")
//		List dest = new ArrayList();
//		Collections.copy(dest,list);
		//正确的:
		List dest = Arrays.asList(new Object[list.size()]);
		System.out.println(dest.size()); //list.size();
		Collections.copy(dest,list);
		
		System.out.println(dest);
		
		/*
		 Collections 类中提供了多个 synchronizedXxx() 方法,
		 该方法可是将指定集合包装成线程同步的集合,从而可以解决多线程并发访问集合时的线程安全问题
		 
		 */
		//返回的list1即为线程安全的List
		List list1 = Collections.synchronizedList(list);
		
		 
	}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值