(数组,数组遍历,数组的创建)
数组
/**
* 什么是数组?
* 数组和变量差不多,都是存放数据的,不同的是,数组可以存放多个数据,
* 但是多个数据的数据类型必须统一
* 数组是一个引用类型
*
* 如何定义一个数组?
* 数组类型 [] 数组名;
*
* 如果数组定义好以后,必须给他进行初始化
* 数组的初始化有两种:
* 1.动态初始化:指定数组的长度,长度指的就是数组中能存多少数据
* 两种格式:
* 第一种:
* 数组类型[] 数组名=new 数组类型[数组长度];
* 第二种;
* 数组类型[] 数组名;
* 数组名=new 数组类型[数组长度];
*
* 2.静态初始化:不是直接指定数组长度,而是直接在初始化的同时给数组添加数据
* 两种
* 第一种:
* 数组类型[] 数组名=new 数组类型[]{数据1,数据2........}
* 第二种:
* 数组类型[] 数组名;
* 数组名 =new 数组类型[]{数据1,数据2........};
*/
/**
* 怎么去访问数组中的具体元素呢?
* 数组名[数组的下标] 数组的下标是从0开始
*
* 如果数组动态初始化以后,数组的元素都会赋予一个默认值
* 如果是整数默认值是0,小数是0.0,boolean默认值是false
* 字符串或者其他引用类型默认值都是null
*/
//获取数组的长度: 数组名.length
System.out.println(a.length);
//数组中常见的几个错误
//数组越界 ArrayIndexOutOfBoundsException
int[] d=new int[2]; // 0 1
//d[2]=10;
//System.out.println(d[2]);
//空指针异常 NullPointerException
int[] e=null;
System.out.println(e[0]);//编译通过
数组遍历
int[] a=new int[]{1,3,5,7,9};
//数组遍历
// System.out.println(a[0]);
// System.out.println(a[1]);
//foR循环
for(int i=0;i<a.length;i++){
System.out.println(a[i]);
}
//foreach(for循环的增强版)
/**
* for(定义变量接受数组元素值:要遍历的数组名)
*/
System.out.println("================");
for(int b:a){
System.out.println(b);
}
数组的创建
//数组类型可以使基本数据类型,也可以是引用类型或者自己定义的对象
Student[] stus=new Student[]{
new Student("张飞", 1001),
new Student("关二哥", 1002),
new Student("黄忠",1003),
new Student("子龙",1004),
new Student("马超",1005)
};
//动态创建一个数组
Student[] stus1=new Student[5];
stus1[0]=new Student("鲁班", 1111);
stus1[1]=new Student("后羿", 1112);
stus1[2]=new Student("李元芳", 1113);
stus1[3]=new Student("马克", 1114);
stus1[4]=new Student("虞姬", 1115);