public class TestMath
{
public static void main(String[] args)
{
double a = 3.2;
double b = Math.pow(a , 5);
System.out.println(b);
double c = Math.sqrt(a);
System.out.println(c); double d = Math.random();///该句的运行结果为什么是0到1之间的随机数数呢?
请高手解析下啊!具体点哦!
System.out.println(d); double e = Math.sin(1.57);
System.out.println(e);
}
}
{
public static void main(String[] args)
{
double a = 3.2;
double b = Math.pow(a , 5);
System.out.println(b);
double c = Math.sqrt(a);
System.out.println(c); double d = Math.random();///该句的运行结果为什么是0到1之间的随机数数呢?
请高手解析下啊!具体点哦!
System.out.println(d); double e = Math.sin(1.57);
System.out.println(e);
}
}
解决方案 »
- java导入Excel数组越界问题
- (急急急)struts2+hibernate+spring整合输出问题
- 大家一般在做页面原型花多久时间啊?
- struts1标签功能用struts2标签实现
- 关于Application Server的基础问题
- 在使用Hibernate时,如何避免出现死锁的情况。
- EJB求助!!!-----多谢!!
- [help]javax.mail + DB(sql server)问题
- 请教关于weblogic workshop开发webservice的客户端安全认证问题。
- ■■我觉得异步机制最大的缺点就是,返回一个结果给客户端,但有可能最终不一定是这个结果,你们觉得呢???
- 请教VO,PO的理解和应用
- 用JAVA写一个上传文件的代码
public class RandomGenerator { public static void main(String[] args) {
for(int i = 0; i < 100; i++) {
System.out.println(nextInt(10));
}
}
public static int nextInt() {
return xorShift(new Object().hashCode() ^ (int)System.nanoTime());
}
public static int nextInt(int limit) {
return Math.abs(nextInt() ^ (int)System.nanoTime()) % limit;
} /**
* George Marsaglia, <i>Xorshift RNGs</i>, Journal of Statistical Software,
* 8(14), 2003. pdf: http://www.jstatsoft.org/v08/i14/paper
*
* @param num
* @return
*/
private static int xorShift(int num) {
num ^= (num << 6);
num ^= (num >>> 21);
num ^= (num << 7);
return num;
}
}
x[i+1]=A*x[i]%M
简要说明一下常数A和M,注意,所有产生的数都小于M,还有就是必须给定一个初始值x[0]来产生此序列,
x[0]就是这个随机数生成器的种子。A和M需要精心挑选,M必须为素数,否则会产生0,但是这种得出的结果是周期性的,如M=11,A=7种子x[0]=1,则序列为
7,5,2,3,10,4,6,9,8,1,7,5,2,
序列从M-1开始周期循环,周期T=M-1,因此你要让周期大,就必须选个大的M
比如你要实现产生0到1的随机数,可以设M为足够大,如1000000000,然后把得到的随机数再除以M即1000000000,得到的就是0到1的随机数,M越大,随机的分布就越均衡,
实际上M一般都取到足够大的,一般取M为2的31次方减一,即2147483647,这样产生的随机序列才均衡
这只是随机化的一个简单的实现,更好的方法还有,就是太复杂,无需深究,基本原理差不太多
返回带正号的 double 值,该值大于等于 0.0 且小于 1.0。 你可以去看API 里面有的