今天只学习了java数组的基本语法,包括声明、初始化等,学习的并不深入,都是些很浅显的东西,高手可以跳过了
之所以把数组这写出来,是因为和C的数组有些区别,研究了几年C,对C的一些东西是根深蒂固的,所以刚学的时候特别不适应。通过将它写出来,希望能够熟悉它。
在java中,不能使用C语言的方式声明数组,例如int a[3]是非法的,编译不通过。java中在数组的定义时不分配空间,只有显式的为其分配空间。如:int a[];a = new int[3];
在java中,建议采用的形式是int[] a;
在定义数组时,也可以直接赋初值,如:int[] a = {1,2,3};这种方式只能在定义的时候才可以使用。还可以在分配空间的时候同时赋初值,如int[] a = new int[]{1,2,3};但是如果要再分配空间的时候赋值,就不能加上大小,否则编译出错,如int[] a = new int[3]{1,2,3}这种方式是非法的。
在数组访问的时候,就使用下标索引的方式进行访问,如a[0],a[1]等。
以上是一维数组,接下来了解了二维数组。
二维数组的声明方式为int[][] a;a = new int[3][4];访问的时候也是通过下标进行访问,如a[0][1];
java的二维数组有一个特点,比如使一个二维数组的不同行的列数不相同。如:int [][] a; a = new int[3][]; a[0] = new int[3]; a[1] = new int[4]; a[2] = new int[6];这个感觉和C的指针数组有些类似了,这是java中比较灵活的一个地方。
二维数组也可在定义的时候赋值,如:int [][] a = new int[][] {{1,2,3},{3,4,5}};这说明定义的是一个两行三列的数组。需要注意的是,如果要赋初值,在new int[][]中的两个[]里就不能写数字标明行和列了。
另外一种赋初值的方法是:int [][] a = {{1,2,3},{3,4,5}};这种方法也可以用来声明一个不规则的数组,如int [][] a = new int[][] {{1,2,3},{3,4},{5}};
在java中,定义一个数组后,如果没有显式的赋初值,则自动为数组赋值,初值为类型的初值。
在了解了数组后,还看了java中的++i和i++操作,这在每种语言中都会讲,但是在C中讲是最能讲明白的,这里就不写这些东西了,项目开发中也不会用到。