java中关于数组知识的小总结

来源:互联网 发布:阿里云 p7 待遇 编辑:程序博客网 时间:2024/05/18 22:45

C/C++与java虽然有很多相似的地方,但是也有一些差异,数组就是一个很明显的例子;今天我们就来谈谈java中的数组相关的知识:

先介绍一维数组

        1:数组定义

                  在java中数组定义的方法有两种,我们先以一维数组为例:

                      int   a[];   或者    int[] a;

                    【注意】其中类型和数组名自己确定,但是要注意这里和C/C++中的区别,在C/C++中数组定义的时候可以指定大小,

                                   但是在java中数组定义的时候不能指定大小,此时a仅仅是一个引用,代表一个数组名,但是并没有对应的内

                                   存空间;


         2:产生数组空间

                    产生数组空间的方法有两种:在定义时直接赋值或者通过new运算符分配空间

                                    在定义时直接赋值:

                                             int   a[]={1,2,3};

                                   通过new运算符分配空间:

                                            int[] a=new int[10];

                                            

         3:数组初始化

                  组初始化也有两种方式:动态初始化和静态初始化

                   静态初始化:又程序员显示的指定每个数组元素的初值,数组的大小又系统决定,使用静态初始化只指定数组元素初值

                                         而不指定数组长度,如下  :

                                               int  a[]=new int []{10,20,30,40};

                                           或者:

                                               int a[]={10,20,30,40};

                   动态初始化:程序员只指定数组长度,数组初值又系统指定:

                                              int[] a=new int[5];

                                           【注意】那么我们来讨论一下系统会给数组指定哪些初值呢?来看一个程序:

                                                public static void main(String[] args) {
                                                               int[] a=new int[5];
                                                               for(int i:a)
                                                       System.out.print(i+" ");
                                           }

                                                结果:

                                                0 0 0 0 0 

                                                          从这个例子可以看出,对于int类型,系统会自动指定为0,具体来说,系统按照如下规则指定初值:

                                                                  (1)整数类型(byte,short,int,long)数组元素的值为0;

                                                                  (2)浮点类型(float,double)数组元素的值为0.0;

                                                                  (3)字符类型char的数组元素值为'\u0000';

                                                                  (4)布尔类型boolean数组元素的值是false;

                                                                  (5)类、接口和数组属对象类型,其数组元素的值为null。



对于二维数组,java和C/C++也有区别,在java中,二位数组不一定是矩形的,形式更加灵活,二位数组的每一个元素都是一维数组,

每个以为数组可以指定自己的元素个数而不受其他数组影响;如下图:

                                               int a[][]=new int[2][];


















                  

0 0
原创粉丝点击