Collection工具类

Collection工具类

  • 基本介绍

 

  •  排序操作(均为static)

 

 

package collection;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

/**
 * @author 紫英
 * @version 1.0
 * @discription
 */
public class Collection01 {
    public static void main(String[] args) {
       List list = new ArrayList();
       list.add("a1");
       list.add("c22");
       list.add("b333");
       list.add("f4444");
        System.out.println("=====原list:=====");
        System.out.println(list);
        System.out.println("=====反转list:=====");
        Collections.reverse(list);
        System.out.println(list);
        System.out.println("=====随机排序list:=====");//可以抽奖啥的
        for (int i = 0; i < 5; i++) {
            Collections.shuffle(list);
            System.out.println(list);
        }
        System.out.println("=====自然排序list:=====");
        Collections.sort(list);
        System.out.println(list);
        System.out.println("=====指定compartor:=====");
        Collections.sort(list, new Comparator() {
            @Override
            public int compare(Object o1, Object o2) {
                //按照字符串长度排序
                return ((String)o1).length()-((String) o2).length();
            }
        });
        System.out.println(list);
        System.out.println("=====交换list:=====");
        Collections.swap(list,0,1);
        System.out.println(list);

    }
}

  • 查找和替换

 

 

package collection;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

/**
 * @author 紫英
 * @version 1.0
 * @discription
 */
public class Collections02 {
    public static void main(String[] args) {
        List list = new ArrayList();
        list.add("tom");
        list.add("jack");
        list.add("recorder");
        list.add("tom");
        System.out.println("=====原list:=====");
        System.out.println(list);
        System.out.println("=====list自然排序最大值:=====");
        System.out.println(Collections.max(list));
        System.out.println("=====list最大值(比较器):=====");
        Object max = Collections.max(list, new Comparator() {
            @Override
            public int compare(Object o1, Object o2) {
                //按照字符串长度排序
                return ((String)o1).length()-((String) o2).length();
            }
        });
        System.out.println(max);
        System.out.println("=====list自然排序最小值:=====");
        System.out.println(Collections.min(list));
        System.out.println("=====list排序最小值(比较器):=====");
        Object min = Collections.max(list, new Comparator() {
            @Override
            public int compare(Object o1, Object o2) {
                //按照字符串长度排序
                return ((String)o1).length()-((String) o2).length();
            }
        });
        System.out.println(min);
        System.out.println("=====list指定元素出现次数:=====");
        System.out.println(Collections.frequency(list,"tom"));
        System.out.println("=====复制的dest:=====");
        List dest = new ArrayList();
        for (int i = 0; i < list.size(); i++) {
            //为了保持两list大小一致来满足copy的条件
            // if (srcSize > dest.size())
            //            throw new IndexOutOfBoundsException("Source does not fit in dest");
            dest.add("");
        }
        Collections.copy(dest,list);
        System.out.println(dest);
        System.out.println("=====元素替换:=====");
        Collections.replaceAll(list,"tom","汤姆");
        System.out.println(list);
    }
}

 

 

 

 

posted @ 2022-01-22 10:25  紫英626  阅读(27)  评论(0编辑  收藏  举报

紫英