总结完JAVA的基础语法和面向对象思想后,今天为大家补充一下JAVA中的数组,数组是什么呢?大家是不是想到了集合,数组和集合有相似之处,集合中的数据无序,不可以重复。数组中则存放着具有相同特征的一组数据集合,数组中的数据有序且可以重复,数组使用时应先声明,再分配存储长度,然后才能够使用。
JAVA中的数组类似于C语言的数组定义,分为一维数组、二维数组、三维数组等等。一般我们只讨论一维和二维数组。数组的使用无外乎声明和初始化,以及数组元素的引用,下面我们就一起再温习一下。
1、一维数组的声明和初始化:
public class one { /* * 一维数组 */ public static void main(String [] args){ //一维数组的声明方式 //基本数据类型数组 int [] a1; String [] a2; double [] a3; //引用数据类型数组 Date [] a4; //声明数组时不能指定其长度(数组中元素的个数) //int a5[5];//非法的 //一维数组对象的创建 a1 = new int[5];//分配存储空间 a2 = new String[5]; a3 = new double[5]; a4 = new Date[5]; //为一维数组添加元素 for(int i=0; i<5; i++){ a1[i]=i+1; } for(int j=0; j<5; j++){ a4[j] = new Date(2015, 3, j+1); } } }
2、一维数组的动态初始化:
public class one1 { /** * @param 一维数组动态初始化 */ public static void main(String[] args) { //基本数据类型动态初始化 int a1 []; a1 = new int[3]; a1[0] = 1; a1[1] = 2; a1[2] = 3; //引用数据类型初始化 Date [] a2 = new Date[3]; a2[0] = new Date(2015,3,1); a2[1] = new Date(2015,3,2); a2[2] = new Date(2015,3,3); } }
3、一维数组元素的静态初始化:
public class one2 { /** * @param 一维元素静态初始化 */ public static void main(String[] args) { int [] a1 = {1,2,3}; Date [] a2 = {new Date(2015,3,1),new Date(2015,3,2),new Date(2015,3,3)}; } }
4、数组元素默认的初始化方式:
public class one3 { /** * @param 一维数组元素默认的初始化方式 */ public static void main(String[] args) { int a1 [] = new int[3]; double a2 [] = new double[3]; boolean a3 [] = new boolean[3]; Date a4 [] = new Date[3]; System.out.println(a1[1]); System.out.println(a2[1]); System.out.println(a3[1]); System.out.println(a4[1]); } }
控制台打印的结果:
5、数组元素的引用:
定义并用运算符new为之分配空间后,才可以应用数组中的元素,数组中元素的引用方式:arrayName[index],index为数组元素的下标值,可以是整型常量或整型表达式。数组元素的下标值从0开始,长度为n的数组的合法的下标值范围:0~n-1。
每个数组都有一个length属性,用来指明数组的长度。例如:a.length的值为数组a的长度(元素个数)。
6、二维数组:
二维数组可以看做以数组为元素的数组。
7、二维数组的初始化:
public class two { /** * @param 二维数组初始化 */ public static void main(String[] args) { //静态初始化 int [][] a1 = {{1,2},{3,4},{5,6}}; //int [3][2] a2 = {{1,2},{3,4},{5,6}};//非法的 Date [][] a3 = {{new Date(2015,3,1),new Date(2015,3,2)},{new Date(2015,3,3),new Date(2015,3,4)},{new Date(2015,3,5),new Date(2015,3,6)}}; //动态初始化 int [][] a4 = new int[3][2]; for(int i=0; i<3; i++){ for(int j=0; j<2; j++){ a4[i][j] = (i+1)*j; } } } }
二维数组的类似于一维数组,大家可以比较着记忆,对于三维、四维等等,就不再赘述,类似与一维、二维数组,一般我们使用不到。到这里JAVA数组的总结告一段落了,如果大家有什么好的见解,还望留言交流。