美文网首页
java29(collections与arrays)

java29(collections与arrays)

作者: 机智的老刘明同志 | 来源:发表于2019-02-03 11:37 被阅读68次

collections:

        java.util.Collection 是集合类的一个顶级接口

        Collections则是集合类的一个工具类/帮助类,其中提供了一系列静态方法,用于对集合中元素进行排序、搜索以及线程安全等各种操作。

    sort: 排序 (传入的对象必须具备比较性,需要实现Comparable接口)

    max: 同sort

    binarySearch:使用二分法返回元素位置(如改元素不存在则返回该元素应插入的位置-1)

    fill:全部替换

    replaceAll:替换指定值

    reverse:反转

    swap:指定下标替换

    shuffle:随机打乱位置

    Collections.reverseOrder(new Comparator()):反转一个比较器

    SynchronizedMap:SynchrinizedSet:SynchrinizedCollection:加锁            

arrays:

        用于操作数组的工具类,里面都是静态方法

    asList:把数组转换成集合

        ① Arrays.asList体现的是适配器模式,只是转换接口,后台的数据仍是数组。数组的长度是固定的,一旦我们增删改集合就会提示UnsupportedOperationException错误 

       ② 如果数组中的元素都是对象,那么变成集合时,数组中的元素就会直接转为集合中的元素.如果数组中的元素都是基本数据类型,那么会将该数组作为集合中的元素存在

      toArray:把集合转换成数组

        ①不带参数的toArray方法,是构造的一个Object数组,然后进行数据拷贝,此时进行转型就会产生ClassCastException 

        ②带参数的toArray方法,则是根据参数数组的类型,构造了一个对应类型的,长度跟ArrayList的size一致的空数组,虽然方法本身还是以 Object数组的形式返回结果,不过由于构造数组使用的ComponentType跟需要转型的ComponentType一致,就不会产生转型异常

相关文章

网友评论

      本文标题:java29(collections与arrays)

      本文链接:https://www.haomeiwen.com/subject/aocysqtx.html