java.util.Collections类使用(很多秘密,网上资料亲测)

主要方法介绍:

对集合操作
主要方法:
sort() 正排序
reverse()逆序
shuffle()打乱--->>>排扑克很有用。
copy() 复制
max()  求集合最大值
min()  求集合最小值
frequency()求一个元素出现概率。可以判断 查找集合中重复数据。
rotate() 

swap(List list,int i,int j)方法的使用(含义:交换集合中指定元素索引的位置)

解释:swap集合位置i和j互换位置

binarySearch(Collection,Object)方法的使用(含义:查找指定集合中的元素,返回所查找元素的索引)。


解释:
Rotate方法需要一个参数distance,该方法将一个List旋转多少长度为distance。假如有个序列列list是[a,b,c,d],调用方法Collections.rotate(list, 1)后,得到的list就变为了[d,a,b,c]。

调用方法Collections.rotate(list, -1)后,得到的list就变为了[b,c,d,a]。

测试代码:

package htt.wave.notification.qztest;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Enumeration;
import java.util.Vector;

/**
 * @authorseerhuitao Collection测试
 * @create2019/5/10
 */
public class CollTest {
    public static void main (String[] args) {
        ArrayList alist = new ArrayList();
        alist.add(75);
        alist.add(65);
        alist.add(52);
        alist.add(3);
        alist.add(84);

        System.out.println ("原始表:"+alist);
        Collections.sort(alist);
        System.out.println ("排序后:"+alist);
        Collections.reverse(alist);
        System.out.println ("逆序后:"+alist);
        Collections.shuffle(alist);
        System.out.println ("混排后:"+alist);
        Collections.rotate(alist,2);
        System.out.println ("移位后:"+alist);

        ArrayList blist = new ArrayList();
        blist.add(55);
        blist.add(66);
        System.out.println ("新列表:"+blist);
        Collections.copy(alist,blist);//把相应元素覆盖。
        System.out.println ("拷贝后:"+alist);

        System.out.println ("列表中出现66的次数:"+Collections.frequency(alist,66));
        System.out.println ("列表中元素的最大值:"+Collections.max(alist));
        System.out.println ("列表中元素的最小值:"+Collections.min(alist));

        Enumeration en = createDemoEnumeration();
        ArrayList clist = Collections.list(en);//将Enumeration转换为list类型。
        System.out.println ("Eunmeration->ArrayList:"+alist);
    }
    public static Enumeration createDemoEnumeration(){
        Vector v=new Vector();
        v.add("Tom");
        v.add("Bell");
        v.add("Neo");
        return v.elements();
    }
}

结果展示:


原始表:[75, 65, 52, 3, 84]
排序后:[3, 52, 65, 75, 84]
逆序后:[84, 75, 65, 52, 3]
混排后:[84, 52, 3, 65, 75]
移位后:[65, 75, 84, 52, 3]
新列表:[55, 66]
拷贝后:[55, 66, 84, 52, 3]
列表中出现66的次数:1
列表中元素的最大值:84
列表中元素的最小值:3
Eunmeration->ArrayList:[55, 66, 84, 52, 3]


基础知识,亲测实用!

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值