Random Java中用于产生随机数 ;
具体有以下三种常用用法 :
1.
(数据类型)(最小值+Math.random()*(最大值-最小值+1))
例:
(int)(1+Math.random()*(10-1+1)) //1-10的int型随数
2.
获得随机数
for (int i=0;i<30;i++)
{System.out.println((int)(1+Math.random()*10));}
(int)(1+Math.random()*10)
通过java.Math包的random方法得到1-10的int随机数
公式是:最小值---最大值(整数)的随机数
(类型)最小值+Math.random()*最大值
3.
Random ra =new Random();
for (int i=0;i<30;i++)
{System.out.println(ra.nextInt(10)+1);}
通过java.util包中的Random类的nextInt方法来得到1-10的int随机数
实例:
要求编写一个猜拳游戏 其中1表示石头 , 2表示剪刀 , 3表示布;
输出格式如下:
游戏开始
请输入一个1-3的数:
1
玩家出的是剪刀,电脑出的是布 ;
玩家获胜!
游戏结束!
代码如下:
package cn.edu.hpu.study.day01;
import java.util.*;
public class RandomTest {
public static void main(String[] args) {
System.out.println("欢迎进入猜拳游戏!");
String pcname = null;
String playername = null;
Boolean flag = true;
Scanner s = new Scanner(System.in);
while(flag){
System.out.println("请输入你要出的拳:");
System.out.println("1--剪刀 , 2--石头 , 3--布");
int player = s.nextInt();
if(player<=0 ||player>=4){
System.out.println("输入格式不正确,请输入1-3的数!");
}
else{
int pc = (int)(1+Math.random()*3);
switch(pc){
case 1 : pcname = "剪刀";break ;
case 2 : pcname = "石头";break ;
case 3 : pcname = "布";break ;
}
switch(player){
case 1 : playername = "剪刀";break ;
case 2 : playername = "石头";break ;
case 3 : playername = "布";break ;
}
if(pc==1 && player==3){
System.out.println("玩家出布,电脑出剪刀");
System.out.println("电脑胜!");
}
else if(pc==3 && player==1){
System.out.println("玩家出剪刀,电脑出布");
System.out.println("玩家胜!");
}
else if(pc<player){
System.out.println("玩家出"+ playername +",电脑出" + pcname);
System.out.println("玩家胜!");
}
else if(pc>player){
System.out.println("玩家出"+ playername +",电脑出" + pcname);
System.out.println("电脑胜!");
}
else if(pc==player){
System.out.println("玩家出"+ playername +",电脑出" + pcname);
System.out.println("平局!");
}
}
System.out.println("是否继续游戏?(Y/N):");
String c = s.next();
if(c.equals("Y")||c.equals("y"))
flag = true ;
else
flag = false ;
}
System.out.println("游戏结束!");
s.close();
}
}