【工具类】Collections工具类(下),求最大值,最小值等

本文展示了如何使用Java中的Collections工具类进行集合操作,包括反转顺序、获取集合中的最大值和最小值。同时,还提供了一个自定义方法来实现找最大值和最小值的功能,这些方法基于对象的compareTo()方法进行比较。
摘要由CSDN通过智能技术生成
package com.tool;
import java.util.*;
public class TestCollections2 {
/**
* @param args
*/
public static void main(String[] args) {
//
ArrayList<String> list=new ArrayList<String>();
list.add("java");
list.add("android");
list.add("c##");
System.out.println(list);//正常顺序,输出效果:[java, android, c##]

/*//案例①:反转顺序
Collections.reverse(list);//反转顺序,
System.out.println(list);//反转后输出效果:[c##, android, java]

//案例②:得到集合中的最大值(如果不是数字,那就按照首字母大小比较)  
System.out.println(Collections.max(list));//输出效果:java

//案例③:得到集合中的最小值(如果不是数字,那就按照首字母大小比较)
System.out.println(Collections.min(list));//输出效果:android

//案例④:求出最大值,和案例②是一样效果的
String max=getMax(list);
System.out.println(max);

//案例⑤:求出最下值,和案例③是一样效果的
String min=getMin(list);
System.out.println(min);*/


}
//排序:找出最大值
public static <E extends Object&Comparable<? super E>> E getMax(Collection<? extends E> col )
{
Iterator<? extends E> ite=col.iterator();//先通过迭代器一个个拿出来
E obj=ite.next();//得到集合中的第一个对象
while(ite.hasNext())//将得到的第一个对象和下一个对象比较
{
E object=ite.next();//得到小一个
int num=obj.compareTo(object);//得到比较结果
if(num<0) //如果是小于0返回比较,得到最大值
obj=object;
}
return obj;
}
//排序找出最小值,和最大值原理是一样的
public static <E extends Object&Comparable<? super E>> E getMin(Collection<? extends E> col)
{
Iterator<? extends E> ite=col.iterator();
E obj=ite.next();
while(ite.hasNext())
{
E object =ite.next();
int num=obj.compareTo(object);
if(num>0)
obj=object;
}
return obj;
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值