简明现代魔法 -> Java编程语言 -> 引用数组的初始化

引用数组的初始化

2009-09-20

之前说过,数组的元素可以是基本类型,也可以是对象。对于元素是基本类型的数组的初始化问题,很简单并且已经举过程序例子了。那么,元素为对象的数组,它的初始化又是应该如何呢?

import java.util.Arrays;
import java.util.Random;

// 描述一片区域会随机产生多个同类型的数码暴龙,但它们体质(生命值)各不相同。
public class WildDigimon {
	
	public static void main(String[] args){
		Random rand = new Random();
		Integer[] hitPoint = new Integer[rand.nextInt(20)];
		System.out.println("死亡之森共有螳螂兽 " + hitPoint.length +"只。");
		for (int i = 0; i < hitPoint.length; i++)
			hitPoint[i] = rand.nextInt(500);
		System.out.println("它们的生命值分别为 ");
		System.out.print(Arrays.toString(hitPoint));
	}
	
}

运行结果为:

死亡之森共有螳螂兽 15只。
它们的生命值分别为 
[492, 396, 485, 246, 429, 243, 247, 15, 260, 160, 250, 17, 347, 375, 105]

使用Integer[] hitPoint = new Integer[rand.nextInt(20)];这句代码new创建了一个Integer数组对象,并且这个数组的元素个数是通过rand.nextInt(20)来随机产生。但是,这个数组还是reference数组,而且这些reference指向哪个对象还是不能确定的。就是说,这个数组还没有初始化完毕的。

当hitPoint[i] = rand.nextInt(500);执行之后,产生的对象赋给每个引用,数组才初始化完毕了。

随机文章推荐
网站分类


注:如需转载本文,请注明出处(原文链接),谢谢。更多精彩内容,请进入简明现代魔法首页。

进入新博客
喜欢本文,就分享它吧
给我留言
您的名字:
您的邮件:
您的网站:


 

copyright © 2009 简明现代魔法    学习、分享、进步

power by Gonn 感谢所有关心和支持本站的朋友们