一、定义数组
int[] scores; 栈内存,不确定
scores=new int[2]; 堆内存,顺序存储
scores[0]=75;scores[1]=81;
赋值后不能再赋值为null,否则被自动回收
超过变量作用范围被自动回收
String[] name; //声明类型
name=new String[5]; //分配空间,默认初始值为null
String[] name=new String[5]; //声明数组
String name[]=new String[]{"张三","NB"};
String[] name={"张三","李四","王五"}
二、默认初始值
数据类型初始值
byte\short\int\long 0
float、double 0
char '\u0000'
boolean false
引用数据类型null
三、数组初始化
(一)动态初始化
Person[] p;
p=new Person[4];
p[0]=new Person();
p[1]=new Person();
p[2]=new Person();
p[3]=new Person();
(二)静态初始化
Person[] p={"张三","李四","王二麻子"}
Person[] p={new Person("张三",25),new Person("李四",32),new Person("王武艺",43),new Person("莉莉",21)};
(三)for
Scanner input=new Scanner(System.in);
for(int i=13;i<person.length;i++) {
System.out.println("第"+i+"个报名者");
person[i]=input.next();
}
(四)for each
for(Person age:p){
System.out.println("张三的年龄是"+age);
}
四、数组的特征
1.同类数据的集合
2.数组是任意类型对象,数组成员相当于成员变量
3.数字长度不可变,如果越界则报错
4.数组初始化一步到位,不可先声明后初始化
5.数组新建小羊羔,数组克隆大山羊
6.Arrays.sort(arr)默认为升序排列
7.操作数组就是操作对象引用地址
网友评论