面向对象语言(JAVA)——工具类(Collections(操作集合)代码实现理解)

工具类,顾名思义就是Java中工具的类。

Collections 类是 Java提供的一个操作 Set、List 和 Map 等集 合的工具类。Collections 类提供了许多操作集合的静态方 法,借助这些静态方法可以实现集合元素的排序、查找替换和 复制等操作。

 Collections 提供了如下方法用于对 List 集合元素进行排序。


1、void reverse(List list):对指定 List 集合元素进行逆向排 序

2、void shuffle(List list):对 List 集合元素进行随机排序 (shuffle 方法模拟了“洗牌”动作)。

3、void sort(List list):根据元素的自然顺序对指定 List 集合 的元素按升序进行排序

4、void sort(List list, Comparator c):根据指定 Comparator 产生的顺序对 List 集合元素进行排序。

5、void swap(List list, int i, int j):将指定 List 集合中的 i 处元 素和 j 处元素进行交换。

6、void rotate(List list, int distance):当 distance 为正数 时,将 list 集合的后 distance 个元素“整体”移到前面;当 distance 为负数时,将 list 集合的前 distance 个元素“整 体”移到后面。该方法不会改变集合的长度。

int binarySearch(List list, Object key):使用二分搜索法搜 索指定的 List 集合,以获得指定对象在 List 集合中的索 引。如果要使该方法可以正常工作,则必须保证 List 中的 元素已经处于有序状态。

Object max(Collection coll):根据元素的自然顺序,返回 给定集合中的最大元素。

Object max(Collection coll, Comparator comp):根据 Comparator 指定的顺序,返回给定集合中的最大元素。

Object min(Collection coll):根据元素的自然顺序,返回 给定集合中的最小元素。

Object min(Collection coll, Comparator comp):根据 Comparator 指定的顺序,返回给定集合中的最小元素。

void fill(List list, Object obj):使用指定元素 obj 替换指定 List 集合中的所有元素。

int frequency(Collection c, Object o):返回指定集合中指 定元素的出现次数。

int indexOfSubList(List source, List target):返回子 List 对象在父 List 对象中第一次出现的位置索引;如果父 List 中没有出现这样的子 List,则返回 -1。

int lastIndexOfSubList(List source, List target):返回子 List 对象在父 List 对象中最后一次出现的位置索引;如果 父 List 中没有岀现这样的子 List,则返回 -1。

boolean replaceAll(List list, Object oldVal, Object newVal):使用一个新值 newVal 替换 List 对象的所有旧值 oldVal。 

Collections.copy(list,Copylist)中,用后者的内容覆盖前者的内容 

输出List中的数据时,如果只是想要显示数据就使用

 System.out.println(list);

如果还需要对某一个进行操作就使用迭代器

Iterator iterator1 = list.iterator();
while (iterator1.hasNext())
        {
            System.out.print(iterator1.next()+" ");
        }

public class CollectionsTest
{
    public static void main(String[] args)
    {
        List list = new ArrayList();
        List Copylist = new ArrayList();
        list.add(4);
        list.add(3);
        list.add(6);
        list.add(1);
        list.add(9);
        System.out.println("—————排序从低到高——————");
        Collections.sort(list);//排序从低到高
        System.out.println(list);

        System.out.println("—————排序从高到低——————");
        Collections.reverse(list);
        Iterator iterator1 = list.iterator();
        while (iterator1.hasNext())
        {
            System.out.print(iterator1.next()+" ");
        }

        System.out.println("\n"+"—————随机排序——————");
        Collections.shuffle(list);
        System.out.println(list);

        System.out.println("\n"+"—————重置内容——————");
        Collections.fill(list,"Lungcen");
        System.out.println(list);

        System.out.println("\n"+"—————覆盖内容——————");
        Copylist.add("H");
        Copylist.add("HH");
        Copylist.add("HHH");
        Collections.copy(list,Copylist);
        System.out.println(list);
    }
}

猜你喜欢

转载自blog.csdn.net/qq_64552181/article/details/127837075
今日推荐