我想问下java.util.Random这个函数在哪个文件里啊 这个文件在哪里,谢谢,我想看看nextDouble和nextGaussian是怎么写的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个文件再哪里啊,我对java不是很懂,我是c++的 $JAVA_HONE$/src.zip就是jdk的源码。如果没有的话,可以到java.sun.com下载jdk源码。 public double nextDouble() { long l = ((long)(next(26)) << 27) + next(27); return l / (double)(1L << 53); }synchronized public double nextGaussian() { // See Knuth, ACP, Section 3.4.1 Algorithm C. if (haveNextNextGaussian) { haveNextNextGaussian = false; return nextNextGaussian; } else { double v1, v2, s; do { v1 = 2 * nextDouble() - 1; // between -1 and 1 v2 = 2 * nextDouble() - 1; // between -1 and 1 s = v1 * v1 + v2 * v2; } while (s >= 1 || s == 0); double multiplier = Math.sqrt(-2 * Math.log(s)/s); nextNextGaussian = v2 * multiplier; haveNextNextGaussian = true; return v1 * multiplier; } }protected int next(int bits) { long oldseed, nextseed; AtomicLong seed = this.seed; do { oldseed = seed.get(); nextseed = (oldseed * multiplier + addend) & mask; } while (!seed.compareAndSet(oldseed, nextseed)); return (int)(nextseed >>> (48 - bits)); } 下载地址:就在java.sun.com网站上,下载jdk的地方,有JDK 5.0 Source Code一节。http://wwws.sun.com/software/communitysource/j2se/java2/download.html或http://java.sun.com/j2se/jrl_download.html 在原文件中的src/java/util/Random.java 里定义。 String类的一点感想 请问实际项目中,于/src同级的/data目录路径如何读取? hasCode到底有什么用? !!!!数据库错误,请教!!!! 求一正则表达式。 一个再java基础中转换界面的问题,各位高手帮帮小弟,急……(解决问题后保证给分,谢谢) 一道JAVA面试题,大家帮忙 java程序不能正常运行了。 谁知道MS SQL Server 2000的jdbc driver到哪里下载? java初学者 问个趣鸟的问题. getColumns()方法问题!!!
long l = ((long)(next(26)) << 27) + next(27);
return l / (double)(1L << 53);
}synchronized public double nextGaussian() {
// See Knuth, ACP, Section 3.4.1 Algorithm C.
if (haveNextNextGaussian) {
haveNextNextGaussian = false;
return nextNextGaussian;
} else {
double v1, v2, s;
do {
v1 = 2 * nextDouble() - 1; // between -1 and 1
v2 = 2 * nextDouble() - 1; // between -1 and 1
s = v1 * v1 + v2 * v2;
} while (s >= 1 || s == 0);
double multiplier = Math.sqrt(-2 * Math.log(s)/s);
nextNextGaussian = v2 * multiplier;
haveNextNextGaussian = true;
return v1 * multiplier;
}
}
protected int next(int bits) {
long oldseed, nextseed;
AtomicLong seed = this.seed;
do {
oldseed = seed.get();
nextseed = (oldseed * multiplier + addend) & mask;
} while (!seed.compareAndSet(oldseed, nextseed));
return (int)(nextseed >>> (48 - bits));
}
或
http://java.sun.com/j2se/jrl_download.html