4000-520-616
欢迎来到免疫在线!(蚂蚁淘生物旗下平台)  请登录 |  免费注册 |  询价篮
主营:原厂直采,平行进口,授权代理(蚂蚁淘为您服务)
咨询热线电话
4000-520-616
当前位置: 首页 > 新闻动态 >
新闻详情
java arrays类常用_Java常用类:Arrays类_chemdrugs的博客-CSDN博客
来自 : CSDN技术社区 发布时间:2021-03-24

一、简介

全类名 java.util.Arrays

描述

此类包含用来操作数组(比如排序和搜索)的各种方法。

此类还包含一个允许将数组作为列表来查看的静态工厂。

注意

除非特别注明 否则如果指定数组引用为 null 则此类中的方法都会抛出 NullPointerException 。

Arrays类中的方法都是 static 修饰的静态方法 在使用的时候可以直接使用类名进行调用 而 不用 使用对象来调用(注意 是 不用 而不是 不能 )。

二、常用方法

Ⅰ、打印数组

方法

toString(Object[] a) 将数组对象的内容转换转换成字符串。

deepToString(Object[] a) 可以将多维数组对象的内容转换转换成字符串。

示例

public static void main(String[] args) {

int[][] arrayObject {{1, 2}, {2, 3}, {3, 4}, {4, 5}, {5, 6}};

System.out.println(Arrays.toString(arrayObject));//[[I 5674cd4d, [I 63961c42, [I 65b54208, [I 1be6f5c3, [I 6b884d57]

System.out.println(Arrays.deepToString(arrayObject));//[[1, 2], [2, 3], [3, 4], [4, 5], [5, 6]]

}

Ⅱ、数组元素排序

方法

sort(Object[] a) 将数组对象的元素按升序排序 排序规则依据该种元素的类在实现Comparable接口的compareTo方法时的实现逻辑。

sort(T[] a, Comparator super T c) 将数组对象的元素按照自定义的排序规则进行排序 排序规则通过传入一个自定义的Comparator接口的实现类对象参数来指定。

示例

public static void main(String[] args) {

int[] intArr {1, 5, 3, 2, 4};

Arrays.sort(intArr);

System.out.println(Arrays.toString(intArr));//[1, 2, 3, 4, 5]

int[][] arrayObject {{1, 2}, {1}, {1, 2, 3, 4}, {1, 2, 3}, {3, 4}};

/*

根据内层数组的长度对二维数组的内层数组进行排序。

匿名内部类可以用Lambda表达式简化为 (o1, o2) - Integer.compare(o1.length, o2.length)

或者替换为 Comparator.comparingInt(o - o.length)

*/

Arrays.sort(arrayObject, new Comparator() {

Override

public int compare(int[] o1, int[] o2) {

return Integer.compare(o1.length, o2.length);

}

});

System.out.println(Arrays.deepToString(arrayObject));//[[1], [1, 2], [3, 4], [1, 2, 3], [1, 2, 3, 4]]

}

Ⅲ、二分法查找元素

方法

binarySearch(Object[] a, Object key) 用二分查找算法在给定数组中搜索给定值的对象 若存在则返回其下标 若不存在则返回负数。

注意

必须在调用binarySearch方法之前先对数组进行排序(通过sort方法等) 如果没有对数组进行排序 则结果是不确定的。

如果数组包含多个带有指定值的元素 则无法保证找到的是哪一个。

示例

public static void main(String[] args) {

int[] intArr {1, 5, 3, 2, 4};

/* 必须在调用binarySearch方法之前先对数组进行排序 */

Arrays.sort(intArr);

System.out.println(Arrays.binarySearch(intArr, 3));//2

}

Ⅳ、填充元素

方法

fill(Object[] a, Object val) 将数组的所有元素用指定的值进行替换。

fill(Object[] a, int fromIndex, int toIndex, Object val) 将数组的指定起始下标到指定截止下标前的所有元素用指定的值进行替换。起始下标的元素会被替换 截止下标的元素不会被替换。

示例

public static void main(String[] args) {

int[] intArr {1, 5, 3, 2, 4};

Arrays.fill(intArr, 1, 3, 6);

System.out.println(Arrays.toString(intArr));//[1, 6, 6, 2, 4]

Arrays.fill(intArr, 7);

System.out.println(Arrays.toString(intArr));//[7, 7, 7, 7, 7]

}

Ⅴ、数组转换List

方法

asList(T... a) 将一组同类型的参数转换为List(ArrayList)集合。

示例

public static void main(String[] args) {

List list Arrays.asList(1, 2, 3, 4, 5);

/* List集合转数组 */

Integer[] array list.toArray(new Integer[0]);

System.out.println(Arrays.toString(array));//[1, 2, 3, 4, 5]

}

\"\" \"\" \"\" 点赞 \"\" \"\" 评论

本文链接: http://arraychem.immuno-online.com/view-677224.html

发布于 : 2021-03-24 阅读(0)
公司介绍
品牌分类
其他
联络我们
服务热线:4000-520-616
(限工作日9:00-18:00)
QQ :1570468124
手机:18915418616
官网:http://