欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java学习笔记:集合框架的工具类Collections

程序员文章站 2024-01-14 08:53:16
...

Collections:里面定义的都是一些操作collection对象的静态方法

List list=new ArrayList();

1.自然排序: Collections.sort(list);
2.倒序排序:Collections.sort(list,reverseOrder(new Comparator())); //比较器需要自己新建一个类,强行逆转一个比较器的顺序

3.max min

4.将非同步集合转成同步集合

CollectionsDemo

package com.Collections;


import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Iterator;

import com.Comparator.ComparatorBylength;

public class CollectionsDemo {

	public static void main(String[] args) {
		Collection<String> coll=new ArrayList<String>();
		coll.add("sad");
		coll.add("z");
		coll.add("b");
		String max=	getMax(coll);
		String max1=Collections.max(coll,new ComparatorBylength());
		
		System.out.println("max="+max);
		System.out.println("max1="+max1);
		
		//Collection中有一个可以将非同步集合转化为同步集合的方法
		// synchronized集合(非同步集合)
	}
	//模拟一个获取最大值的功能
	
	public static <T extends Object&Comparable<? super T>>T getMax(Collection<? extends T> coll) {
	
		Iterator<? extends T> it=coll.iterator();
		T max=it.next();
		//遍历元素
		while(it.hasNext()) {
			T temp=it.next();
		
		
		if(temp.compareTo(max)>0) {
			max=temp;
		}
		}
		return max;
		
	}
}


定义的比较器

package com.Comparator;

import java.util.Comparator;

public class ComparatorBylength implements Comparator<String>{

	@Override
	public int compare(String o1, String o2) {
		int temp=o1.length()-o2.length();
		return temp==0?o1.compareTo(o2):temp;
	}

}

相关标签: java