这是我最近参加的一次面试中提出的问题。
据我所知,两个数字之间的随机数可以生成如下
public static int rand(int low, int high) {
return low + (int)(Math.random() * (high - low + 1));
}
但在这里,我使用Math.random()来生成一个介于0和1之间的随机数,并用它来帮助我生成介于低和高之间的值。有没有其他不需要使用外部函数就可以直接做的事情?
发布于 2013-02-23 15:28:14
System.currentTimeMillis()
算不算外部的?你总是可以得到它并通过一些最大值来计算mod:
int rand = (int)(System.currentTimeMillis()%high)+low;
发布于 2013-02-23 15:23:22
你可以使用一个变量的地址,也可以组合多个变量的地址来生成一个更复杂的变量...
发布于 2013-02-23 15:26:16
您可以获得当前的系统时间,但在大多数语言中,这也需要一个函数。
https://stackoverflow.com/questions/15038174
复制相似问题