Java Random 随机数
Java Randow 类提供的方法
protected int |
next(int bits)
生成下一个伪随机数。 |
---|---|
boolean |
nextBoolean()
返回下一个伪随机数,它是取自此随机数生成器序列的均匀分布的 boolean 值。 |
void |
nextBytes(byte[] bytes)
生成随机字节并将其置于用户提供的 byte 数组中。 |
double |
nextDouble()
返回下一个伪随机数,它是取自此随机数生成器序列的、在 0.0 和 1.0 之间均匀分布的 double 值。 |
float |
nextFloat()
返回下一个伪随机数,它是取自此随机数生成器序列的、在 0.0 和 1.0 之间均匀分布的 float 值。 |
double |
nextGaussian()
返回下一个伪随机数,它是取自此随机数生成器序列的、呈高斯(“正态”)分布的 double 值,其平均值是 0.0,标准差是 1.0。 |
int |
nextInt()
返回下一个伪随机数,它是此随机数生成器的序列中均匀分布的 int 值。 |
int |
nextInt(int n)
返回一个伪随机数,它是取自此随机数生成器序列的、在 0(包括)和指定值(不包括)之间均匀分布的 int 值。 |
long |
nextLong()
返回下一个伪随机数,它是取自此随机数生成器序列的均匀分布的 long 值。 |
void |
setSeed(long seed)
使用单个 long 种子设置此随机数生成器的种子。 |
Java Random 使用示例
public class Test
{
public static void main(String[] args) {
Random r = new Random();
// 初始化
System.out.println("数据范围[0, 100), 结果为 => " + r.nextInt(100));
}
}
运算结果为
数据范围[0, 100), 结果为 => 24
注意结果是随机的,数据范围[0, 100)
Java Random 小游戏(石头剪刀布游戏)
游戏规则说明
- 1 表示石头
- 2 表示剪刀
- 3 表示布
它们的关系是 石头 > 剪刀, 剪刀 > 布, 布 > 石头
import java.io.IOException;
import java.util.Random;
import java.util.Scanner;
public class Test
{
public static void main(String[] args) {
Random r = new Random();
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("请输入:");
int number = r.nextInt(3)+1;
int input = scanner.nextInt();
if(number == 1)
{
if( input == 1)
{
System.out.println("你和机器人都是出了石头,平局");
}
else if(input == 2)
{
System.out.println("你出了剪刀和机器人出了石头,很遗憾输了");
}
else if(input == 3)
{
System.out.println("你出了布和机器人出了石头,恭喜你赢了");
}
else
{
System.out.println("非法输入 = " + input + ", 1<= x <= 3");
}
}
else if(number == 2)
{
if( input == 1)
{
System.out.println("你出了石头和机器人出了剪刀,恭喜你赢了");
}
else if(input == 2)
{
System.out.println("你和机器人都是出了剪刀,平局");
}
else if(input == 3)
{
System.out.println("你出了布和机器人出了剪刀,很遗憾输了");
}
else
{
System.out.println("非法输入 = " + input + ", 1<= x <= 3");
}
}
else if(number == 3)
{
if( input == 1)
{
System.out.println("你出了石头和机器人出了布,很遗憾输了");
}
else if(input == 2)
{
System.out.println("你出了剪刀和机器人出了布,恭喜你赢了");
}
else if(input == 3)
{
System.out.println("你出了布和机器人出了布,平局");
}
else
{
System.out.println("非法输入 = " + input + ", 1<= x <= 3");
}
}
}
}
}
运行游戏
请输入:
1
你和机器人都是出了石头,平局
请输入:
2
你和机器人都是出了剪刀,平局
请输入:
3
你出了布和机器人出了布,平局
请输入:
1
你出了石头和机器人出了布,很遗憾输了
请输入:
1
你和机器人都是出了石头,平局
请输入:
2
你出了剪刀和机器人出了布,恭喜你赢了
请输入:
1
你和机器人都是出了石头,平局
请输入:
3
你出了布和机器人出了剪刀,很遗憾输了
请输入: