Java常用的Arrays函数举例详解

 更新时间:2025年05月22日 08:31:57   作者:英雄不问出处~  
这篇文章主要给大家介绍了关于Java常用Arrays函数举例详解的相关资料,Java数组常用方法包括sort、toString、equals、fill、copyOf等,涵盖数组排序、比较、填充与拷贝,需要的朋友可以参考下

Arrays

sort

int[] array = new int[]{1,20,3};
Arrays.sort(array);// 1 3 20

toString

  • 帮助数组转为字符串
int[] array = new int[]{1,2,3};
System.out.println(Arrays.toString(array));
// [1,2,3]

binarySearch

  • 二分查找
int[] array = new int[]{1,2,3};
System.out.println(Arrays.binarySearch(array,2));
// 返回1下标
// 第一个参数,有序的数组array,要查找的key

equals

  • 比较两个数组是否相同,长度,数据内容,相同数组,数组指针是否为空
  • 返回值是boolean
int[] array = new int[]{1,2,3};
int[] array1 = new int[]{1,3,2};
System.out.println(Arrays.equals(array,array1));
// false

fill

  • fill对数组进行填充
int[] array = new int[10];
Arrays.fill(array,0,3,9);// [0,3)区间填充
Arrays.fill(array,9);// 都填充为9
System.out.println(Arrays.toString(array));

数组拷贝

copyOf

  • copyOf第一个参数是数组,第二个参数是数组的长度,返回值是一个数组
int[] array1 = new int[]{1,2,3};
int[] copy = Arrays.copyOf(array1,array1.length);
// 1 2 3 
// 可以当成扩容使用,剩余空间补零
int[] copy = Arrays.copyOf(array1,array1.length*2);
// 1 2 3 0 0 0

copyOfRange

  • 进行数组范围的拷贝
int[] array1 = new int[]{1,2,3,4,5,6};
int[] copy = Arrays.copyOfRange(array1,0,3);
// 1 2 3

arraycopy

  • 直接拷贝到copy数组中
int[] array1 = new int[]{1,2,3,4,5,6};
int[] copy = new int[array1.length];
System.out.println(array1,0,copy,0,array1.length);
System.out.println(Arrays.toString(copy));
// 1 2 3 4 5 6 

取传过去的数组长度(100)和原数组长度(10)的较小值,那就是10

二维数组

定义

int[][] array = new int[][]{{1,2,3},{4,5,6}};
int[][] array1 = {{1,2,3},{4,5,6}};
int[][] array2 = new int[2][3];

二维数组的每个元素都是一个一维数组

遍历

for(int i = 0;i < array.length;i++){
	for(int j = 0;j < array[i].length;j++){
	       System.out.print(array[i][j] + " ");
	   }
	   System.out.println();
	}
System.out.println();

for(int[] arr : array1){
   for(int x : arr){
       System.out.print(x + " ");
   }
   System.out.println();
}

deepToString

  • 把二维数组打印成字符串
int[][] array1 = {{1,2,3},{4,5,6}};
System.out.println(Arrays.deepToString(array1));
// [[1, 2, 3], [4, 5, 6]]

空指针异常

  • 不规则的二维数组
int[][] array3 = new int[2][];

// 解决方法
array3[0] = new int[]{1,2};
array3[1] = new int[]{1,2,3};

System.out.println(array3[0]);
System.out.println(array3[1]);

for(int i = 0;i < array3.length;i++){
    for(int j = 0;j < array3[i].length;j++){
        System.out.print(array3[i][j] + " ");
    }
    System.out.println();
}

二维数组是特殊的一维数组内存的存储机制是线性的,二维数组的每个元素又都是一个一维数组

总结 

到此这篇关于Java常用的Arrays函数举例详解的文章就介绍到这了,更多相关Java常用Arrays函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Draw.io部署详细步骤

    Draw.io部署详细步骤

    Draw.io 是 GitHub 上的一个开源的免费流程图绘制工具,功能非常的丰富,Draw.io 是开源的,所以针对外网访问不稳定或在访问不了外网的情况,我们可以将其部署到我们本地,也就是把本地当作服务端,本文将一步一步介绍具体部署步骤,感兴趣的朋友一起看看吧
    2023-10-10
  • Java深入浅出数组的定义与使用上篇

    Java深入浅出数组的定义与使用上篇

    数组是有序的元素序列,若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按有序的形式组织起来的一种形式
    2022-03-03
  • Java创建随机数的四种方式总结

    Java创建随机数的四种方式总结

    这篇文章主要介绍了java的四种随机数生成方式的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,,需要的朋友可以参考下
    2022-07-07
  • java生成随机数的常用方法分析

    java生成随机数的常用方法分析

    这篇文章主要介绍了java生成随机数的常用方法,结合实例形式分析了java生成随机数常用的方法功能与相关使用技巧,需要的朋友可以参考下
    2017-10-10
  • java面向对象设计原则之合成复用原则示例详解

    java面向对象设计原则之合成复用原则示例详解

    这篇文章主要介绍了java面向对象设计原则之合成复用原则的示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2021-10-10
  • idea下的工具栏中services不见了,如何调用出来

    idea下的工具栏中services不见了,如何调用出来

    这篇文章主要介绍了idea下的工具栏中services不见了,如何调用出来的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-05-05
  • Java实现二维码QRCode的编码和解码与示例解析

    Java实现二维码QRCode的编码和解码与示例解析

    本文主要介绍Java实现二维码QRCode的编码和解码,这里给大家一个小示例以便理解,有需要的小伙伴可以参考下
    2016-08-08
  • Maven解决jar包版本冲突的4种方法详解

    Maven解决jar包版本冲突的4种方法详解

    这篇文章主要给大家介绍了关于Maven解决jar包版本冲突的4种方法代码,maven工程要导入jar包的坐标,就必须要考虑解决jar包冲突,文中介绍的非常详细,需要的朋友可以参考下
    2023-07-07
  • Java如何实现登录token令牌

    Java如何实现登录token令牌

    这篇文章主要介绍了Java如何实现登录token令牌,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • 通过反射实现Java下的委托机制代码详解

    通过反射实现Java下的委托机制代码详解

    这篇文章主要介绍了通过反射实现Java下的委托机制代码详解,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12

最新评论