Java 这两个随机值有何不同?
两者之间有区别吗Java 这两个随机值有何不同?,java,Java,两者之间有区别吗 int number=(int)(Math.random()*1000); 及 int number=(int)(100+Math.random()*900); 要生成一个3位随机数?第二个表达式保证生成一个3位随机数,但第一个表达式不能保证。第一个表达式可以生成从0到999的任意整数 您还可以生成3位随机整数,如下所示: import java.util.Random; public class Main { public static void main(St
int number=(int)(Math.random()*1000);
及
int number=(int)(100+Math.random()*900);
要生成一个3位随机数?第二个表达式保证生成一个3位随机数,但第一个表达式不能保证。第一个表达式可以生成从
0
到999
的任意整数
您还可以生成3位随机整数,如下所示:
import java.util.Random;
public class Main {
public static void main(String[] args) {
Random random = new Random();
int number = random.nextInt(900) + 100;
System.out.println(number);
}
}
第二个表达式保证生成一个3位随机数,但第一个表达式不能保证。第一个表达式可以生成从
0
到999
的任意整数
您还可以生成3位随机整数,如下所示:
import java.util.Random;
public class Main {
public static void main(String[] args) {
Random random = new Random();
int number = random.nextInt(900) + 100;
System.out.println(number);
}
}
Math.random()来自:
返回带正号的双精度值,大于或等于0.0且小于1.0。返回值是从该范围内以(近似)均匀分布伪随机选择的
例如:
//生成随机数
double rand=Math.random();
//每次执行此代码时,输出都不同
System.out.println(“随机数:+rand”);
//伪随机输出:0.5568515217910215
就你而言:
- 整数=(int)(Math.random()*1000);返回介于
-0
999
- 整数=(整数)(100+Math.random()*900);返回介于
-100
999
//生成随机数
double rand=Math.random();
//每次执行此代码时,输出都不同
System.out.println(“随机数:+rand”);
//伪随机输出:0.5568515217910215
就你而言:
- 整数=(int)(Math.random()*1000);返回介于
-0
999
- 整数=(整数)(100+Math.random()*900);返回介于
-100
999
在这类问题中,您应该访问JavaAPI。希望有帮助 有巨大的差异,
(int)(Math.random()*1000)
从0-999生成有巨大的差异,(int)(Math.random()*1000)
从0-999I生成。所以第一个语句是0-999,但是第二个语句是100-999之间的任何数字??正确…这就是我在回答中提到的。我明白了。所以第一个语句是0-999,但是第二个语句是100-999之间的任何数字??正确…这就是我在回答中提到的。