关于Random
我想产生一个0到10随机数,怎么办???
----------------解决方案--------------------------------------------------------
10*random().
----------------解决方案--------------------------------------------------------
在API里面是没有Random这个函数的!上面的思路是很好的,在我学了util包之后,我已经形成了一套思路了,就是碰上什么问题就要取API里面取找!郁闷!但是我找到了一个在API里面很好的函数:nextInt(),就是产生下一个随机数!
你上面说的那个表达式,我用了用,总是报错,你能不能写个小的程序演示一下!谢谢!
[此贴子已经被作者于2006-9-17 22:24:31编辑过]
----------------解决方案--------------------------------------------------------
用 int(11*MATH.ramdom())就可以了
----------------解决方案--------------------------------------------------------
我说的不是那个意思,我就是想看看用util包中做随机数的方法怎么做,不用其他包的!
----------------解决方案--------------------------------------------------------
刚学两天java...
util没听过, ,知道的包实在是太少了. 想问一下,nextInt()产生的整数是多少位的? ,是随即的吗?
如果是的话不防将产生的数转化为字符串,然后取字符串的第一个字符,再转为整型不就可以了么
刚学,说错了别怪我,如果思路不正确,希望斑竹见了删了这帖
怕误导新手...
[此贴子已经被作者于2006-9-18 1:19:31编辑过]
----------------解决方案--------------------------------------------------------
在util下有这个Random 你再找找看
import java.util.Random;
public class RandomApp
{
public static void main(String[] args)
{
Random r=new Random();
int x;
for(int i=0;i<20;i++)
{
x=(r.nextInt() >>> 1) % 101;
System.out.println(x);
}
}
}
x=(r.nextInt() >>> 1) % 101; 是说从1到101随机int型的数字(取正取模方法)
PS:还有种办法就是Math.random()来产生一个0-1之间的浮点数,然后你就可以*你要的范围,取整就可以
[此贴子已经被作者于2006-9-18 1:47:31编辑过]
----------------解决方案--------------------------------------------------------
请问x=(r.nextInt() >>> 1)是啥意思... 看不懂
nextInt(int n)返回一个伪随机数,它是从此随机数生成器的序列中取出的、在 0(包括)和指定值(不包括)之间均匀分布的 int值。nextInt 的常规协定是伪随机地生成并返回指定范围中的一个 int 值。所有 n 个可能 int 值的生成概率(大致)相同
[此贴子已经被作者于2006-9-18 2:26:42编辑过]
----------------解决方案--------------------------------------------------------
这不是解释得挺好的吗
----------------解决方案--------------------------------------------------------