Java集合工具2--Arrays
来源:互联网 发布:新华软件学校 编辑:程序博客网 时间:2024/05/16 06:49
续上文中,讨论了集合中常用的工具库和工具类。事实上,集合的底层实现已然或为数组或链表,因此还有必要探寻一下Java中的Arrays
类。
Arrays
javadoc对其的解释为:
此类包含操作数组的各种方法,如排序和查找方法。此外带有一个静态工厂方法asList, 用于将数组以List的形式呈现。
若没有特别注明,传入的特定的数组引用为null时,类中的所有方法皆会抛NullPointerException。
类中的实现方法有一个简要的文档描述,这些描述应该是一种注意事项,而不是一种规范,这些实现可有其他算法自由替换。(如对Object[]进行sort排序时,不一定是归并排序,但是其他算法必须是稳定的)
常用方法
1.获取由特定数组组成的ArrayList
public static <T> List<T> asList(T... a)
2.各种数组类型的二分查找方法
public static int binarySearch(byte[] a, byte key)public static int binarySearch(int[] a, int key) public static int binarySearch(Object[] a, Object key)public static <T> int binarySearch(T[] a, T key, Comparator<? super T> c) 其他同系列的省略
3.拷贝、截取数组
public static <T> T[] copyOf(T[] original, int newLength)public static <T> T[] copyOf(T[] original, int newLength) public static boolean[] copyOfRange(boolean[] original, int from, int to) 其他同系列的省略
4.数组比较,平行比较、深度比较
public static boolean deepEquals(Object[] a1, Object[] a2) public static boolean equals(int[] a, int[] a2) public static boolean equals(Object[] a, Object[] a2)其他同系列的省略
5.数组填充特定的值
public static void fill(boolean[] a, boolean val)public static void fill(byte[] a, byte val)public static void fill(byte[] a, int fromIndex, int toIndex, byte val)public static void fill(int[] a, int val)同系列的省略
6.获取数组hash值
public static int hashCode(boolean a[])public static int hashCode(int a[])同系列的省略
7.排序
public static void sort(byte[] a)public static void sort(int[] a)public static void sort(Object[] a)
在Java8中新增了很多并行排序和流式操作,如下
对指定的数组按数字升序顺序,该排序算法是一个并行排序合并public static void parallelSort(int[] a) 返回指定的数组的序列流public static IntStream stream(int[] array) public static <T> Stream<T> stream(T[] array)
8.toString系列,返回数组的字符串形式
public static String toString(int[] a)public static String toString(Object[] a)
0 0
- Java集合工具2--Arrays
- java集合工具类---Collections/Arrays
- java集合(工具类Arrays)
- Java集合框架:Arrays工具类
- java集合框架之集合工具类Arrays类
- java集合(6)——数组工具类Arrays
- JAVA 集合(Arrays)
- Java Arrays集合方法
- 集合工具类 Collections 、Arrays
- javaSE-集合工具类-Arrays
- java Arrays工具类
- java Arrays工具类
- Java-Arrays工具类
- Java集合框架-4.【集合工具类:Collections、Arrays】【JDK1.5新特性】
- 黑马程序员-java基础之集合Map集合,Collections,Arrays工具类
- 黑马程序员——Java基础知识——集合框架、集合工具类、Arrays
- 【Java基础】——集合工具类Collections和数组工具类Arrays
- 【Java源码分析】集合框架-Collections工具类-Arrays工具类
- Ubuntu 15.04 安装 MongoDB 3.x
- 连接池3:代理模式重写close方法
- 积极向上的佳句(1)
- java收集资料
- <manacher>神族文字
- Java集合工具2--Arrays
- 【CS学习】——UML九种图
- iOS中按钮不响应的解决方法
- 第四周项目(5):猴子选大王
- 学习ThinkPHP3.2.2:video8,判断是否post提交数据
- Leetcode 20 Valid Parentheses
- spring mvc - cxf webservice项目
- 学习ThinkPHP3.2.2:video8,_404函数已废除,用E函数替代
- 单链表的实现C++封装