开发者

Java常用的Arrays函数举例详解

目录
  • Arrays
    • sort
    • toString
    • binarySearch
    • equals
    • fill
  • 数组拷贝
    • copyOf
    • copyOfRange
    • arraycopy
  • 二维数组
    • 定义
    • 遍历
    • deepToString
    • 空指针异常
  • 总结 

    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
    

    Java常用的Arrays函数举例详解

    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[]http://www.devze.com copy = new int[array1.length];
    System.out.println(array1,0,copy,0,array1.length);
    System.out.println(Arrays.toString(copy));
    // 1 2 3 4android 5 6 
    

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

    Java常用的Arrays函数举例详解

    二维数组

    定义

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

    Java常用的Arrays函数举例详解

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

    Java常用的Arrays函数举例详解

    Java常用的Arrays函数举例详解

    遍历

    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}};
    www.devze.comSystem.out.println(Arrays.deepToString(array1));
    // [[1, 2, 3], [4, 5, 6]]
    

    空指针异常

    • 不规则的二维数组
    int[][] array3 = new int[2][];
    
    // 解决方法
    array3[0] = new int[]{1,2};
    array3[1] = nepythonw 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函数举例详解

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

    Java常用的Arrays函数举例详解

    总结 

    到此这篇关于Java常用的Arrays函数举例详解的文章就介绍到这了,更多相关Java常用Arrays函数内容请搜索编程客栈(www.cppwww.devze.comcns.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!

    0

    上一篇:

    下一篇:

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    最新开发

    开发排行榜