黑马程序员—JAVA集合工具类Collections

------------- android培训java培训、期待与您交流! -------------

Collections介绍和使用: 
Collections:集合框架的工具类。里面定义的都是静态方法。
Collections和Collection的区别: 
Collection是集合框架中的一个顶层接口,它里面定义了单列集合的共性方,它有两个常用的子接口, List:对元素都有定义索引。有序的。可以重复元素。
Set:不可以重复元素。无序。
Collections是集合框架中的一个工具类。该类中的方法都是静态的提供的方法中有可以对list集合进行排序,二分查找等方法。通常常用的集合都是线程不安全的。因为要提高效率。如果多线程操作这些集合时,可以通过该工具类中的同步方法,将线程不安全的集合,转换成安全的。
  
代码示例: 
import java.util.*; 
class  CollectionsDemo 
{ 
        public static void main(String[] args)  
        { 
               Demo();   
        }   
        public static void Demo() 
        { 
               List<String> list = new ArrayList<String>();   
               list.add("abcd"); 
               list.add("aaa"); 
               list.add("zz"); 
               list.add("kkkkk"); 
               list.add("qq"); 
               list.add("z"); 
               Collections.sort(list);//按自然顺序排序
               Collections.sort(list,new StrLenComparator());//按比较器方式排序。
  
               sop(list); 
                int max = Collections.max(list);//取排序中的第一元素
               int index = Collections.binarySearch(list,"aaaa");//二分查找,如果有返回其索引,如没有返回(-插入点-1)。必须是有序集合。
               Collections.fill(list, "z")//集合元素全部替换成指定元素
               Collections.replaceAll(list,"aaa","pp");//将集合中的“aaa”替换成“pp”
               Collections.reverse(list);//反转集合元素
               Collections.shuffle(list);//将集合中元素随机排列
               Collections.swap(list,1,2);//将list内角标1和2的元素换位
               sop("index="+index); 
        }          
        public static void sop(Object obj) 
        { 
               System.out.println(obj); 
        } 
}     
class StrLenComparator implements Comparator<String> 
{ 
        public int compare(String s1,String s2) 
        { 
               if(s1.length()>s2.length()) 
                       return 1; 
               if(s1.length()<s2.length()) 
                       return -1; 
               return s1.compareTo(s2); 
        } 
} 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值