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);

  }
 
posted @ 2022-12-13 22:13  家兴Java  阅读(183)  评论(0)    收藏  举报