Java基本程序设计结构——数组

1.可以使用两种形式声明数组:

    int [] a;

    或

    int a [];

2.初始化:

    创建一个数字数组时,所有元素都初始化为0.boolean数组的元素会初始化为假。对象数组的元素则初始化为一个特殊值空。

3.对于每个循环:

    例如:for(int element:a)

                的System.out.println(元件);

    有个更简单的方式打印数组,即使用数组类的的toString方法

    例如:的System.out.println(Arrays.toString的(a));

4.匿名数组:

    new int [] {1,2,3,4,5}

    在Java的中,允许数组长度为0

5.数组拷贝:

    两个变量将引用同一个数组:

扫描二维码关注公众号,回复: 1573997 查看本文章

    例如:int [] l = s;

    如果希望将一个数组的所有值拷贝到一个新的数组中去,就要使用数组类的copyOf方法

    例如:int c = Arrays.copyOf(l , l.length);

    也可以增加数组的大小

    例如:l = Arrays.copyOf(l , 2*l.length);

    Java数组与C++数组在堆栈上有很大不同:

    例如:int[] a = new int[100]; //Java

              不同于

              int a[100];  //C++

              而等同于

             int* a = new int[100];  //C++

    但是没有指针运算,即不能通过a加1得到数组的下一个元素

6.数组排序:

    可以使用Arrays类中的sort方法,该方法了使用了优化了的快速排序算法

    Math.random方法可以得到一个0到1之间(包含0、不包含1)的随机浮点数

7.java.util.Arrays 1.2:

    static type copyOf(type[] a , int length)

    static type copyOfRange(type[] a , int start , int end)

    返回与a类型相同的一个数组,其长度为length或者end-start,数组元素为a的值

    

    static int binarySearch(type[] a , type v)

    static int binarySearch(type[] a , int start , int end , type v)

    采用二分搜索算法查找值v。如果查找成功,则返回相应的下标值;否则,返回一个负数值r


    static void fill(type[] a , type v)

    将数组的所有数据元素设置为v


    static boolean equals(type[] a , type[] b)

    如果两个数组大小相同,并且下标相同的元素都对应相等,返回真

8.多维数组:

    初始化:例如:double [] [] balances;

    balances = new double [n] [n];

    int [] [] m =

    {

        {} 16,12,1,13

        {2,3,1,8}

    };

    想要快速打印一个二维数组的数据元素列表,可以调用:

    System.out.printil(Arrays.deepToString的(a));

9.不规则数组:

    Java的实际上没有多维数组,只有一维数组。多维数组被解释为“数组的数组”

    double [] [] b = new double [10] [6]; // Java的

    不同于

    双b [10] [6]; // C ++

    也不同于

    双(* b)[6] =新双[10] [6]; // C ++

    而是分配了一个包含10个指针的数组

    双** b =新双* [10]; // C ++

    然后,指针数组的每个元素被填充了一个包含6个数字的数组;

    对于(I = 0; I <10;我++){

        b [i] =新双[6];

    }

猜你喜欢

转载自blog.csdn.net/qq_38386085/article/details/80585699