zoukankan      html  css  js  c++  java
  • 集合框架(二)

    java.util.Arrays

    一、构造方法

      private Arrays(){}
      //因此无法产生实例,只是用来处理array对象的工具类
    

    二、常用方法

    • 填充数组:Arrays.fill(arrObj,val); //Arrays类中多次重载该方法,对应不同型别的参数

    • 比较两个数组对象是否相等:Arrays.equals(Object[] arr_1,Object[] arr_2);//其他重载方法读源码或查帮助文档

    • 数组的排序:Arrays.sort(int[]);//只要实现了Comparable或拥有Comparator,便可对Object array进行排序

    • 数组元素的查找:Arrays.binarySearch(int[] arr,int key);//int型的查找采用的算法是"二分法",因此需要先排序,再查找;比for循环稍微快点,其他重载方法详看源码或帮助文档

    三、array的复制(浅拷贝)

    • java.lang.System类的arraycopy()方法 //比起"使用for循环执行复制",该方法具有更快速的array复制能力

    • Arrays.copyOf(T[],int);//源码中是通过上面的arraycopy()方法实现的

    四、数组元素的比较

    • java.lang.Comparable接口:又称自然比较法,实现compareTo()方法即可使class(类)具有比较能力,直接使用Arrays.sort(Object obj)即可对元素排序

    • java.util.Comparator接口:需要单独建立一个类,使用Arrays.sort(T[] arr,Comparator<? super T> c),参数c为该类创建的对象

    五、总结

      当你持一大群对象时,首选应该是array。然而大多数情况,array并不能满足需求(如对象数量不定时)。在集合框架中,java提供了一套容器类库,包括List、Set、Map等。java容器会自动调整自己的容量,和array不同。
    All rights reserved please indicate the source if reprint---吓尿了的大肥鼠
  • 相关阅读:
    vue-loader
    slot内容分发
    单向数据流
    vue父子组件(1.0)
    vue组件
    vue过渡
    vue之自定义组件
    jquery下拉菜单
    vue之过滤器
    【数学】数学归纳法
  • 原文地址:https://www.cnblogs.com/realsoul/p/5699157.html
Copyright © 2011-2022 走看看