1.一维数组声明:
一维数组的声明方式:type var[]; 或type[] var;
声明数组时不能指定其长度(数组中元素的个数)
2.创建:
Java
中使用关键字new创建数组对象,格式为:数组名 = new 数组元素的类型 [数组元素的个数]
3.初始化:
1.
动态初始化:数组定义与为数组分配空间和赋值的操作分开进行;
2.静态初始化:在定义数字的同时就为数组元素分配空间并赋值;
3.默认初始化:数组是引用类型,它的元素相当于类的成员变量,因此数组分配空间后,每个元素也被按照成员变量的规则被隐士初始化。
2.静态初始化:在定义数字的同时就为数组元素分配空间并赋值;
3.默认初始化:数组是引用类型,它的元素相当于类的成员变量,因此数组分配空间后,每个元素也被按照成员变量的规则被隐士初始化。
实例:
TestD.java(动态):
TestD.java(动态):
程序代码:
1.
public
class TestD
2. {
3.
public
static
void main(String args[]) {
4.
int a[] ;
5. a =
new
int[3] ;
6. a[0] = 0 ;
7. a[1] = 1 ;
8. a[2] = 2 ;
9. Date days[] ;
10. days =
new Date[3] ;
11. days[0] =
new Date(2008,4,5) ;
12. days[1] =
new Date(2008,2,31) ;
13. days[2] =
new Date(2008,4,4) ;
14. }
15. }
16.
17.
class Date
18. {
19.
int year,month,day ;
20. Date(
int year ,
int month ,
int day) {
21.
this.year = year ;
22.
this.month = month ;
23.
this.day = day ;
24. }
25. }
26.
TestS.java(静态):
程序代码:
1.
public
class TestS
2. {
3.
public
static
void main(String args[]) {
4.
int a[] = {0,1,2} ;
5. Time times [] = {
new Time(19,42,42),
new Time(1,23,54),
new Time(5,3,2)} ;
6. }
7. }
8.
9.
class Time
10. {
11.
int hour,min,sec ;
12. Time(
int hour ,
int min ,
int sec) {
13.
this.hour = hour ;
14.
this.min = min ;
15.
this.sec = sec ;
16. }
17. }
TestDefault.java(默认):
程序代码:
1.
public
class TestDefault
2. {
3.
public
static
void main(String args[]) {
4.
int a [] =
new
int[]{0,1,2} ;
5. System.out.println("" + a[1]) ;
6. }
7. }
简单些即:
int a[]=new int[10];//相当于动态
int b[]={0,1,2,3,4,5};//静态
int c[]=new int[]{0,1,2,4,5}//默认
4.对象数组例子:(一个Student类,一个测试类TestStudent)
//学生类Student.java
public class Student {
private String name; //学员姓名
private int stuNo; //学员编号
private String hobby; //学员爱好
//set/get 方法,封装学生属性
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getStuNo() {
return stuNo;
}
public void setStuNo(int stuNo) {
this.stuNo = stuNo;
}
public String getHobby() {
return hobby;
}
public void setHobby(String hobby) {
this.hobby = hobby;
}
public class Student {
private String name; //学员姓名
private int stuNo; //学员编号
private String hobby; //学员爱好
//set/get 方法,封装学生属性
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getStuNo() {
return stuNo;
}
public void setStuNo(int stuNo) {
this.stuNo = stuNo;
}
public String getHobby() {
return hobby;
}
public void setHobby(String hobby) {
this.hobby = hobby;
}
}
//-------------------------------------------------
//测试类TestStudent
public class TestStudent {
public static void main(String[] args) {
public static void main(String[] args) {
//声明一个学生对象数组
Student[] stu = new Student[2];
//实例化学生对象xixi
Student xixi = new Student();
xixi.setName("xixi");
xixi.setStuNo(18);
xixi.setHobby("我的爱好是音乐");
//实例化学生对象dada
Student dada = new Student();
dada.setName("dada");
dada.setStuNo(24);
dada.setHobby("我的爱好是H啊");
//将xixi和dada放入学生对象数组
stu[0] = xixi;
stu[1] = dada;
for(int i = 0;i < stu.length;i++){
System.out.println("大家好我是:"+stu[i].getName()+"我的学号是:"+stu[i].getStuNo()+"我的爱好是:"+stu[i].getHobby());
}
}
}
Student[] stu = new Student[2];
//实例化学生对象xixi
Student xixi = new Student();
xixi.setName("xixi");
xixi.setStuNo(18);
xixi.setHobby("我的爱好是音乐");
//实例化学生对象dada
Student dada = new Student();
dada.setName("dada");
dada.setStuNo(24);
dada.setHobby("我的爱好是H啊");
//将xixi和dada放入学生对象数组
stu[0] = xixi;
stu[1] = dada;
for(int i = 0;i < stu.length;i++){
System.out.println("大家好我是:"+stu[i].getName()+"我的学号是:"+stu[i].getStuNo()+"我的爱好是:"+stu[i].getHobby());
}
}
}