首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

问一下关于随机数的有关问题

2013-04-09 
问一下关于随机数的问题import java.util.*public class huantinglove{public static void main(String[]

问一下关于随机数的问题
import java.util.*;
public class huantinglove{
public static void main(String[] args){
Random random = new Random(47);
Integer[] a = new Integer[random.nextInt(20)];//这里是什么意思??是产生一个小于20的随机数吗?但为什么能够直接赋值给数组。。
System.out.println("length of a = " + a.length);
for (int i = 0;i < a.length;i ++ )
{
a[i] = random.nextInt(500);
}
System.out.println(Arrays.toString(a));

}
}

为什么a.length = 18,是如何得到十八个数的!
[解决办法]
Integer[] a = new Integer[random.nextInt(20)];//这是定义一个长度在20类的随机大小的Integer数组。

a.length=18就说明random.nextInt(20)产生的随机数为18,也就是random.nextInt(20)==18,所以,
Integer[] a = new Integer[random.nextInt(20)];也就等同于:
Integer[] a = new Integer[18];//到此,也就是相当于你定义了一个长度为18的数组。但是数组并还没有得到18个数,只是它此时的长度为18而已。但是数组中的每个元素都是有默认值的,从这个解度来说,它也就有了18个默认值,18个值就是这么来的。这个还和数组的类型是有关系的。三言两语 也说不清

热点排行
Bad Request.