在类中,只能定义变量,也就是属性,以及方法,在方法中才能定义对象!!!!!!
数组是对象!!!!! 装载主数据类型数组中元素可以是主数据类型变量,否则为引用变量。
定义例子如下:
1、装载主数据类型数组
double [] a = new double[8];
a[0] = 1.2;
a[1] = 2.0;
........以此类推
OR
int [] b;
b = new int[6];
b[0] = 0;
b[1] = 1;
注意:元素是变量,但b这个数组本身是对象,如果将int[] a = b;那么,a将引用b原来的对象。
见下列程序
public class Shuzu{
public static void main(String[] args){
int[] b = new int[3];//注意[]中指定数组的大小
b[0] = 12345;
b[1] = 98765;
int[] a = b;
System.out.println(a[0]+" "+a[1]+" "+a[2]+" ");
}
}
结果为 12345 98765 0,说明数组本身是对象,也说明没有定义的int数组元素默认值为0。
2、实体对象数组
例如:
Dog[] d1 = new Dog[3];
d1[0].name = "wangwang";
d1[0].color = "brown";
d1[0].dark();
OR
Dog[] a;
a = new Dog[2];
实体数组的元素对应的是一个个对象,只能调用对象中的属性或者方法。
public class Dog{
String name;
String color;
void dark(){
System.out.println("WoW~~~~~~~~~");
}
public static void main(String[] args){
Dog[] wwd = new Dog[6];
int y = 0;
while(y<6){
wwd[y] = new Dog();
y = y+1;
}
wwd[0] = new Dog();
wwd[1] = new Dog();
wwd[0].name = "jj";
wwd[1].color = "red";
int x = 0;
while (x<6){
System.out.println(wwd[x].name);
System.out.println(wwd[x].color);
System.out.print("wwd"+x+" ");
wwd[x].dark();//此句不可放到System.out.print中,编译器提示x为空值,原因待研究。
x = x+1;
}
}
}
总结:装载主数据数组和实体数组的不用处:定义数组名称后,装载主数据数组元素可以直接赋值,实体数组元素必须引用每一个对象。
本文深入讲解了Java中数组与对象的概念及其使用方式。包括基本数据类型数组与实体对象数组的区别,如何定义及初始化数组,以及数组元素的赋值与引用等关键知识点。
1万+

被折叠的 条评论
为什么被折叠?



