首页 > 其他分享 >Collections常用方法

Collections常用方法

时间:2022-12-13 22:25:22浏览次数:55  
标签:常用 dest list Object List add Collections 方法

Collections常用方法

Collections:操作Collection、Map的工具类

/*
       reverse(List):反转List中元素的顺序
       shuffle(List):对List集合元素进行随机排序
       sort(List):根据元素的自然顺序对指定List集合元素按升序排列
       sor(List,Comparator):根据指定的Comparator产生的顺序对List集合进行排序
       swap(List,int , int):将指定List集合中的i处元素和j处元素进行交换

       Object max(Collection):根据远古三的自然顺序,返回给定集合中的最大元素
       Object max(Collection,Comparator):根据Comparator指定的顺序,返回给定集合中的最大元素
       Object min(Collection)
       Object min(Collection,Comparator)
       int frequency(Collection,Object):返回指定集合中指定元素的出现次数
       void copy(List dest,List src):将src中的内容复制到dest中
       boolean replaceAll(List list,Object odlVal,Object newVal):使用新值替换List对象的所有旧值
    */

 

 

@Test
   public void test2(){
       List list = new ArrayList();
       list.add(123);
       list.add(43);
       list.add(765);
       list.add(-97);
       list.add(0);

       // 报异常:IndexOutOfBoundsException("Source does not fit in dest")
//       List dest = new ArrayList();
//
//       Collections.copy(dest,list);

       // 正确的
       List dest = Arrays.asList(new Object[list.size()]);
       System.out.println(dest.size()); // = list.size();

       Collections.copy(dest,list);
       System.out.println(dest);

       /*
           Collections类中提供了多个synchronizedXxx()方法,
           该方法可使将指定集合包装成线程同步的集合,从而可以解决多线程并发访问集合时的线程安全问题
        */

       // 返回的list1即为线程安全的List
       List list1 = Collections.synchronizedList(list);
  }

 

 

@Test
   public void test1(){
       List list = new ArrayList();
       list.add(123);
       list.add(43);
       list.add(765);
       list.add(765);
       list.add(765);
       list.add(-97);
       list.add(0);

       System.out.println(list);

//       Collections.reverse(list);
//       Collections.shuffle(list);
//       Collections.sort(list);
//       Collections.swap(list,1,2);
       int frequency = Collections.frequency(list, 123);

       System.out.println(list);
       System.out.println(frequency);

  }
 

标签:常用,dest,list,Object,List,add,Collections,方法
From: https://www.cnblogs.com/jiaxing-java/p/16980825.html

相关文章

  • Kubernetes(k8s) kubectl explain常用命令
    kubectl在$HOME/.kube目录中查找一个名为config的配置文件。可以通过设置KUBECONFIG环境变量或设置--kubeconfig参数来指定其它kubeconfig文件。本文主要介绍K......
  • Kubernetes(k8s) kubectl rollout history常用命令
    kubectl在$HOME/.kube目录中查找一个名为config的配置文件。可以通过设置KUBECONFIG环境变量或设置--kubeconfig参数来指定其它kubeconfig文件。本文主要介绍K......
  • 嵌入式linux_常用命令
    1linux挂载mount-tnfs-onolock-otcp-orsize=32768,wsize=32768192.168.1.164:/opt/01_sdk/rk3588-linux-release-20220227/01_nfs_3588/nfsrootmount:/nfs......
  • 2022年解决B站无法上传分P视频的方法
    首先下载安装 哔哩哔哩投稿工具2.3.0.1088https://boss.hdslb.com/material/bilibiliuploader-2.3.0.1088.exe(由于防盗链机制,只能选中右键转到或复制链接到下载器下载)......
  • 小新学Java19-【Stream流、方法引用】
    一、Stream流1.1引言传统集合的多步遍历代码循环遍历的弊端Stream的更优写法1.2流式思想概述   这里的filter、map、skip都是在对函数模型进行操作,集合元素......
  • swiper常用属性
    <view> <!-- 指示点:indicator-dots 自动轮播:autoplay 轮播间隔:interval 使用衔接动画:circular 动画的时长:duration --> <swiperclass="swiper"indi......
  • 设计模式之美--工厂模式之工厂方法
    使用场景:对象创建的逻辑比较复杂,且对象种类较多。将创建对象的复杂逻辑放到对应工厂去实现。优点:比简单工厂更符合开闭原则缺点:如果创建对象的逻辑很简单,使用这种模式是......
  • 前端常用的正则校验
     例如element常用的必填校验:   固话和手机号pattern:/^(((\d{3,4}-)?[0-9]{7,8})|(1(3|4|5|6|7|8|9)\d{9}))$/ 手机号pattern:/^1[3|4|5|6|7|8|9][0-......
  • 如何抠图换背景,分享3秒钟快速抠图的方法教程,简单方便
    PS抠图比较耗费时间,对于新手来说操作起来也比较困难。想要快速抠图换背景,提高效率应该怎么做呢?别着急,网上有很多AI智能抠图的工具可以使用,就算是新手也能轻松操作,3秒快速抠......
  • 为什么不建议使用std::thread及解决方法
     使用std::thread创建线程,代码逻辑如果存在某些异常,。这时候程序会产生coredump,但是分析coredump,会发现调用栈是缺失的,造成定位问题困难;问题描述:源码:1#inc......