• java(Collections工具类)


    1、Collections是一个操作Set、List和Map等集合的工具类

    2、Collection中提供了一系列静态的方法对集合元素进行排序、查找和修改等操作

    排序操作(均为static方法):

    1、reverse(List):反转List中元素的顺序

    2、shuffle(List):对List集合元素进行随机排序

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

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

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

    1. import java.util.*;
    2. public class Study {
    3. @SuppressWarnings({"all"})
    4. public static void main(String[] args) {
    5. ArrayList arrayList = new ArrayList();
    6. arrayList.add("tom");
    7. arrayList.add("jary");
    8. arrayList.add("smith");
    9. arrayList.add("jack");
    10. //reverse(List)
    11. Collections.reverse(arrayList);
    12. System.out.println("反转后:"+arrayList);
    13. //shuffle(List)
    14. Collections.shuffle(arrayList);
    15. System.out.println(arrayList);
    16. //sort(List)自然排序,类型需要一致
    17. Collections.sort(arrayList);
    18. System.out.println("自然排序后:"+arrayList);
    19. //sort(List,Comparator)根据指定的Comparator产生的顺序对List集合进行排序
    20. Collections.sort(arrayList, new Comparator() {
    21. @Override
    22. public int compare(Object o1, Object o2) {
    23. if (o1 instanceof String && o2 instanceof String)
    24. return ((String) o1).length() - ((String) o2).length();
    25. return 0;
    26. }
    27. });
    28. System.out.println("指定排序后:"+arrayList);
    29. //swap(List,int,int)
    30. Collections.swap(arrayList,1,2);
    31. System.out.println("交换后:"+arrayList);
    32. }
    33. }

    查找与替换:

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

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

    3、Object min(Collevtion)

    4、Object max(Collection,Comparator)

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

    6、void copy(List dest,List src):将src中的内容复制到dest中

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

    1. public class Study {
    2. @SuppressWarnings({"all"})
    3. public static void main(String[] args) {
    4. ArrayList arrayList = new ArrayList();
    5. arrayList.add("tom");
    6. arrayList.add("jary");
    7. arrayList.add("smith");
    8. arrayList.add("jack");
    9. //max
    10. System.out.println(Collections.max(arrayList));
    11. System.out.println(Collections.max(arrayList, new Comparator() {
    12. @Override
    13. public int compare(Object o1, Object o2) {
    14. return ((String) o1).length() - ((String) o2).length();
    15. }
    16. }));
    17. //frequency
    18. System.out.println(Collections.frequency(arrayList,"tom"));
    19. //copy
    20. ArrayList dest = new ArrayList(Arrays.asList(new String[arrayList.size()]));
    21. // for (int i = 0; i < arrayList.size(); i++) {
    22. // dest.add("");
    23. // }
    24. Collections.copy(dest,arrayList);
    25. System.out.println(dest);
    26. }
    27. }

  • 相关阅读:
    Spring Cloud 面试题
    Spring框架-Aop
    基于Effect的组件设计 | 京东云技术团队
    软件测试/测试开发丨ChatGPT:带你进入智能对话的新时代
    Unity的BuildPlayerProcessor:深入解析与实用案例
    NIO之非阻塞模式
    Linux Namespace
    OpenEuler/CentOS如何修改密码策略
    .NET 缓存:内存缓存 IMemoryCache、分布式缓存 IDistributedCache(Redis)
    NOI / 1.2编程基础之变量定义、赋值及转换
  • 原文地址:https://blog.csdn.net/weixin_63954483/article/details/125474454