第一夜——数组与集合——Arrays

2018-11-04  本文已影响0人  MXi4oyu

简介

大家好,我是平头哥。今天给大家分享的是java中的数组array。
java中的数组(array)是一种较高级的数据结构类型,它是相同类型变量的集合,可以使用共同的名字对它进行引用。数组可以是一维的,也可以是多维的,我们可以通过数组下标对其中的元素进行访问。

数组的使用

实例代码

import java.util.Arrays;

/**
 * Created by MXi4oyu on 2018/11/4.
 */
public class learn_array {

    /**
     * 整型数组的输出
     * @param array 待输出的数组
     */
    public static void outputArray(int [] array){

        if (array!=null){

            for(int i=0;i<array.length;i++){

                System.out.print(array[i]+"    ");
            }

            System.out.println();
        }
    }

    public static void main(String [] args){

        //1、填充数组,将array0中所有元素的值赋值为1
        int [] array0 = new int[5];

        Arrays.fill(array0,1);
        System.out.println("执行Arrays.fill(array0,1)后,array0中的值为:");
        outputArray(array0);

        //2、给数组赋值,将array0中的第2~3个元素赋值为8
        Arrays.fill(array0,2,4,8);
        System.out.println("执行Arrays.fill(array0,2,4,8)后,array0中的值为:");
        outputArray(array0);

        //3、对数组排序,对数组中的第2~6个元素进行排序
        int [] array1 = new int[]{7,8,3,12,6,3,5,4};
        Arrays.sort(array1,2,7);
        System.out.println("执行Arrays.sort(array1,2,7)后,array1中的值为:");
        outputArray(array1);
        //4、对整个数组进行排序
        Arrays.sort(array1);
        System.out.println("执行Arrays.sort(array1)后,array1中的值为:");
        outputArray(array1);

        //5、比较数组元素是否相等
        System.out.println("array0与array1是否相等:");
        System.out.println(Arrays.equals(array0,array1));

        int [] array2 = (int[]) array1.clone();
        System.out.println("array1与array2是否相等:");
        System.out.println(Arrays.equals(array1,array2));

        //6、使用二分法在数组中查找指定元素所在的下标(数组必须是排好序的,否则结果不正确)
        Arrays.sort(array1);
        System.out.println("元素8在array1中的位置:"+Arrays.binarySearch(array1,8));
        //如果元素不存在数组中,则二分法查找结果为负数
        System.out.println("元素9在array1中的位置:"+Arrays.binarySearch(array1,9));

    }

}

输出结果:

执行Arrays.fill(array0,1)后,array0中的值为:
1    1    1    1    1    
执行Arrays.fill(array0,2,4,8)后,array0中的值为:
1    1    8    8    1    
执行Arrays.sort(array1,2,7)后,array1中的值为:
7    8    3    3    5    6    12    4    
执行Arrays.sort(array1)后,array1中的值为:
3    3    4    5    6    7    8    12    
array0与array1是否相等:
false
array1与array2是否相等:
true
元素8在array1中的位置:6
元素9在array1中的位置:-8

源码解析

上一篇 下一篇

猜你喜欢

热点阅读