各位小伙伴大家好,今天读《Java核心卷1》。总结了一下数组的创建和方法的调用,希望可以对各位有所帮助。

 

一、数组的定义:

      数组是一种数据结构,用来存储同一类型值得集合,通过一个整型下标(index 或称索引)可以访问数组的每一个值。

二、声明数组(创建数组):

      1、在声明数组变量时,需要指出数组类型(数组类型紧跟【】)和数组变量的名字。eg :声明整型数组a     int[ ]  a;

      上述操作只是声明了数组,并没有将a进行初始化为一个真正的数组。应该使用new操作符创建数组。

      int[ ] a=new int[100]; 此操作是声明并初始化了一个长度为100的整型数组,可以存储100个整数。

注:一旦声明了一个数组,器长度大小就无法改变。

     2、在Java中,提供了一种创建数组对象并同时提供初始值的简写形式,这个语法不需要使用new,也不用指定长度。

eg:   int [ ] test={2,5,7,11};   最后一个值后面允许有“ ,”。

     3、在Java中,允许有长度为0的数组,长度为0的数组与null并不相同。

 

三、访问数组的元素:

      1、 数组的下表从0开始——数组长度-1,一旦创建数组,元素的初始值为各个数据类型的默认值(整型为0、布尔型为false、对象数据类型为null)

       2、由于数组的最大的索引值是数组长度-1,当访问元素的索引≥数组长度时,会出现array index out of bounds,即数组下表越界的异常。

       3、数组长度定义为:array.length  //输出的length为属性,字符串的length()为方法。

      4、遍历集合的方式:

        int[ ] array=new int[100]; //定义并初始化一个长度为100的整型数组。

       1)利用普通f循环进行遍历:

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

       2)利用for each循环

for(int a:array){
     System.out.println(a);
      }

      3)利用Arrays类的toString()的方法 ,返回的是一个包含数组元素的字符串,这些元素包围在中括号内,并用逗号分隔。

四、数组拷贝:

      在Java中,允许将一个数组的变量拷贝到另一个数组变量中,利用Arrays中的copyOf方法:

     eg:  int[ ] copyArray=Arrays.copyOf(,test.length);

    第二个参数值得是新数组的长度,这个方法通常用来增加数组的大小:

当长度<原数组的长度时,只复制前面的数值。