一、数组

2020-07-19  本文已影响0人  blank_white

一、数组

  1. 数组的声明

            int[] j=new int[10];
            int[] k={1,2,3,4};
            System.out.println(k.length);
            // 匿名数组
            soutArray(new int[]{4,5,6});
            int[] i;
            i= new int[]{7,8,9};
    
  2. 数组的拷贝和排序

            int[] array1=new int[]{1,2,3,4,5};
    
            // 数组拷贝 两个变量引用同一个数组
            int[] array2=array1;
            array1[0]=999;
            // 结果输出 999  999
            System.out.println(array1[0]);
            System.out.println(array2[0]);
    
            // 重新分配空间拷贝
            int[] array3= Arrays.copyOf(array1,array1.length);
            // 长度超出部分 会补默认值
            int[] array4= Arrays.copyOf(array1,array1.length*2);
            soutArray(array4);
    
            array4=Arrays.copyOfRange(array1,1,3);
            soutArray(array4,"array4");
    
    
            int[] array5=new int[]{8,5,9,6,4,3,1,7,6,3,4,6,7,8,9,6,4,1,3,6,4,};
    
            // 使用优化的快速排序
            Arrays.sort(array5);
            
    
            // 二分查找 使用前需要先排序
            int index=Arrays.binarySearch(array5,5);
            System.out.println("index = " + index);
            index=Arrays.binarySearch(array5,3,6,5);
            System.out.println("index = " + index);
    
            int[] array6=new int[10];
            Arrays.fill(array6,6);
            
    
            // 比较数组大小和元素 是否全部对应相等
            Arrays.equals(array3,array1);
            System.out.println(Arrays.equals(array3,array1));
            System.out.println(Arrays.equals(array3,array4));
    
    
            int[][] array7={
                    {1,2,3},
                    {4,5,6}
            };
            // 快速打印多维数组
            System.out.println(Arrays.deepToString(array7));
    
    
上一篇 下一篇

猜你喜欢

热点阅读