Collections和Arrays工具类

Collections和Arrays都是集合框架中的工具类,方法都是静态的。

  • Collections工具类中常用的方法

    Collections.swap(list, i, j):交换集合list中位置i和位置j的元素位置。

    Collections.sort(list):按照自然顺序给集合list排序。也可以自定义比较器对集合进行排序,如Collections.sort(list, new CompartorByLength())。

    Collections.max(list):按照自然顺序获取集合list中的最大值。Collections.max(list, new ComparatorByLength()):按照自定义比较器获取集合list中的最大值。

    Collections.binarySearch(list, "aaa"):查找二叉树,在集合list中查找字符串"aaa",如果集合中存在这个字符串,则返回其在集合中的位置,如果集合中不存在此字符串,则返回一个负数,这个负数是此字符串在集合中的位置的负值-1.

    Collections.reverseOrder():返回一个比较器,能够实现自然排序的逆转。也可以自定义一个比较器,实现自定义排序的逆转,Collections.reverseOrder(new ComparatorByLength())。

    Collections.replaceAll(list, "cba", "nba"):用"nba"替换集合list中的所有"cba"。

    Collections.fill(list, "cc"):将集合list中填充"cc"字符串,即此操作后,集合中所有的元素都是字符串"cc"。

    Collections.shuffle(list):利用随机源对集合list进行置换,即将list中的所有元素随机交换位置。

  • Arrays工具类中比较常用的方法

    Arrays.asList(str):将数组str转换为集合,建立了数组与集合之间的联系。(直接打印数组会得到类型@哈希值,而打印集合可以直接显示集合中的所有元素)

    Arrays.sort(str):对数组中的元素进行自然排序。


注意:数组可以通过Arrays.asList()方法转换为集合,集合也可以通过toArray方法转化为数组。

String[] s = list.toArray(list.size());

对于转换后的数组,如果长度小于集合的size,那么上述方法会创建一个同类型并和集合相同大小的数组。

如果长度大于集合的size,那么该方法会使用指定的数组,存储集合中的元素,其他位置默认为null。

所以转换是最好将数组长度设为集合的大小,不浪费空间。

发布了49 篇原创文章 · 获赞 19 · 访问量 4万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章