与上次一样,首先我们要先引入两个包,一个用于输入数据,一个用于随机选择数据
import java.util.Random;
import java.util.Scanner;
创建一个字符型数组存储电脑来存储电脑可能会选择出的结果
String []computer={"剪刀","石头","布"};
//创建一个字符串数组来存储电脑选择的选项
//另外也可以用整形数据来代替剪刀石头布,会更简单
还要创建几个整形数组来记录玩家或是电脑赢得次数,以及平局的次数
int a=0,b=0,c=0;
//创建两个整形数据来记录赢得的次数,a代表玩家,b代表电脑,c表示平局次数
接下来输入你想进行多少次该游戏
int n=new Scanner(System.in).nextInt();
//输入你想进行游戏的次数
根据你输入的n的值不同,for循环的次数也不同,即进行的游戏次数不同
for (int i=1;i<=n;i++)
然后输入你要出什么,输出语句我的第一篇文章有讲过,单行双行都可,这里不再赘述
System.out.print("你选择出:");
String enter=new Scanner(System.in).nextLine();
让电脑随机双输出一个选择,这个第一篇文章也有;
int com=(int) (Math.random()* computer.length);
下面的就是这次代码的核心部分了,需要不停地根据玩家的输入判断与电脑输入的结果之间的胜负关系,这里我们主要用if和if的嵌套来进行判断
这里我们假设玩家输入了剪刀,用equals来判断,其他的同理
if(enter.equals("剪刀")){}
有了玩家的输入的数据,我们需要那这个数据去和电脑随机输出的数据进行比对,判断游戏结果,根据游戏结果的不同,对不同的用于记录比赛结果的整形数据进行++操作
if(computer[com].equals("剪刀")){
System.out.println("电脑选择出剪刀");
System.out.println("该局平局!DRAW!");
c++;
}
else if(computer[com].equals("石头")){
System.out.println("电脑选择出石头");
System.out.println("你输了!YOU LOSE!");
b++;
}
else{
System.out.println("电脑选择出布");
System.out.println("你赢了。");
a++;
}
根据玩家输入的三种不同数据,需要进行三次上述的操作
什么?你说别的数据?你可以在游戏里试试哦(笑
最后再来个输出游戏结果的几句结束语,以及比赛结果的详情这轮游戏就算完成了
完整代码
package m001;
import java.util.Random;
import java.util.Scanner;
//制作一个剪刀石头布的小游戏
public class game01 {
public static void main(String[] args) {
String []computer={"剪刀","石头","布"};
//创建一个字符串数组来存储电脑选择的选项
//另外也可以用整形数据来代替剪刀石头布,会更简单
System.out.print("输入你想进行游戏的次数");
int n=new Scanner(System.in).nextInt();
//输入你想进行游戏的次数
int a=0,b=0,c=0;
//创建两个整形数据来记录赢得的次数,a代表玩家,b代表电脑,c表示平局次数
for (int i=1;i<=n;i++){
System.out.print("你选择出:");
String enter=new Scanner(System.in).nextLine();
//存储玩家输入的数据
int com=(int) (Math.random()* computer.length);
//电脑随机输出的数据
if(enter.equals("石头")==false&&enter.equals("剪刀")==false&&
enter.equals("布")==false)
{
System.out.println("哥们你输入的什么勾八?不输入的正确的游戏没办法正常进行捏:)");
System.out.println("好了,该局游戏作废,下局请好好输入哦");}
if(enter.equals("剪刀")){
if(computer[com].equals("剪刀")){
System.out.println("电脑选择出剪刀");
System.out.println("该局平局!DRAW!");
c++;
}
else if(computer[com].equals("石头")){
System.out.println("电脑选择出石头");
System.out.println("你输了!YOU LOSE!啧啧啧,真菜!");
System.out.println("你看看这个玩家,真的是太逊了!");
System.out.println("这个玩家就是逊呐!");
b++;
}
else{
System.out.println("电脑选择出布");
System.out.println("你赢了。");
a++;
}
}
if(enter.equals("石头")){
if(computer[com].equals("剪刀")){
System.out.println("电脑选择出剪刀");
System.out.println("你赢了。");
a++;
}
else if(computer[com].equals("石头")){
System.out.println("电脑选择出石头");
System.out.println("该局平局!DRAW!");
c++;
}
else{
System.out.println("电脑选择出布");
System.out.println("你输了!YOU LOSE!");
System.out.println("你看看这个玩家,真的是太逊了!");
System.out.println("这个玩家就是逊呐!");
b++;
}
}
if(enter.equals("布")){
if(computer[com].equals("剪刀")){
System.out.println("电脑选择出剪刀");
System.out.println("你输了!YOU LOSE!");
System.out.println("你看看这个玩家,真的是太逊了!");
System.out.println("这个玩家就是逊呐!");
b++;
}
else if(computer[com].equals("石头")){
System.out.println("电脑选择出石头");
System.out.println("你赢了。");
a++;
}
else{
System.out.println("电脑选择出布");
System.out.println("该局平局!DRAW!");
c++;
}
}
}
System.out.println("游戏结束!");
System.out.println("你赢了"+a+"局");
System.out.println("电脑赢了"+b+"局");
System.out.println("平局次数为"+c);
}
}
实机演示: