java random 问题,在线等答案!急

来源:百度知道 编辑:UC知道 时间:2024/05/14 13:14:32
我要做10年的降水量,要求是:降水量平均为5,每年的波动在50%(也就是说最多的时候是7,最少为3)。
因为还有其他用到random的数据,所以不能放在一个method里面。
我模仿老师给的random模板这样做的:
public double random(double base, double rate)
{ double change, price;
Random random = new Random((int)(base * 1000)) ;
change = 0.5 - random.nextDouble();
change = change * rate;
return price = base * (1 + change);
}

public double rain()
{
return random( 5, 0.5 );
}

但是这样出来,无论测试几次,都只有一个相同的数。为什么??
是不是要把rain定义为array?

其实不有Random类

只要用Math.random()就行了!!
public double random(double base, double rate)
{ double change, price;
change = 0.5-2*Math.random()*rate;
return price = base * (1 + change);
}

public double rain()
{
return random( 5, 0.5 );
}