Java中利用随机数的猜拳游戏
Java中利用随机数的猜拳游戏,实现非常简单,重难点在于随机数的产生。
首先GameJude类是用于判断输赢的一个类:
package testGame; public class GameJudge {
private String marks1 = "拳头";
private String marks2 = "拳头";
private int personCout = 0;
private int computerCout = 0;
private int cout = 0;
public void juge(int person, int computer) {
switch (person) {
case 1:
marks1 = "石头";
break;
case 2:
marks1 = "剪刀";
break;
case 3:
marks1 = "布";
break;
case 4:
System.out.println("用户赢"+this.personCout+"次\n电脑赢"+this.computerCout+"次\n平局"+this.cout+"次");
return;
}
switch (computer) {
case 1:
marks2 = "石头";
break;
case 2:
marks2 = "剪刀";
break;
case 3:
marks2 = "布";
break;
} if (person == computer) {
System.out.println("用户出" + marks1 + "\n电脑出" + marks2 + "\n结果:平局!");
cout++;
} else if ((person == 1 && computer == 2)|| (person == 2 && computer == 3)|| (person == 3 && computer == 1)) {
System.out.println("用户出" + marks1 + "\n电脑出" + marks2 + "\n结果:用户赢!");
personCout++;
} else {
System.out.println("用户出" + marks1 + "\n电脑出" + marks2 + "\n结果:电脑赢!");
computerCout++;
}
}
// public void shouGameCout(){
// System.out.println("用户赢"+this.personCout+"次\n电脑赢"+this.computerCout+"次\n平局"+this.cout+"次");
// }
}
接下TestGame类是一个启动类,显示输入输出,退出统计游戏结果:
package testGame; import java.util.Scanner;
import java.util.Random;
public class TestGame { /**
* @param 显示输入输出,推出时统计游戏结果
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
Random r = new Random();
GameJudge g = new GameJudge();
int person = 0;
while (person != 4) {
System.out.println("------------------猜拳游戏------------------");
System.out.println("请出拳(1、石头;2、剪刀;3、布;4、退出)");
person = sc.nextInt();
if( person == 1 || person == 2 || person == 3 || person == 4){
int computer = r.nextInt(3)+1;
g.juge(person, computer);
}else{
System.out.println("输入有误,请重新输入");
continue;
}
}
}
}
这个游戏我曾经写过几次,后来做了一些小的改动以满足作业的要求,主要用的就是随机数的产生和if条件语句,哈哈^_^。
加油!!!
Java中利用随机数的猜拳游戏的更多相关文章
- Java中的随机数生成器:Random,ThreadLocalRandom,SecureRandom
Java中的随机数生成器:Random,ThreadLocalRandom,SecureRandom 文中的 Random即:java.util.Random,ThreadLocalRandom 即: ...
- Java中产生随机数的两个方法
Java中产生随机数的两个方法 一.利用random方法来生成Java随机数. 在Java语言中生成Java随机数相对来说比较简单,因为有一个现成的方法可以使用.在Math类中,Java语言提供了一个 ...
- 为什么说Java中的随机数都是伪随机数?
什么是伪随机数? 1.伪随机数是看似随机实质是固定的周期性序列,也就是有规则的随机. 2.只要这个随机数是由确定算法生成的,那就是伪随机,只能通过不断算法优化,使你的随机数更接近随机. (随机这 ...
- 在JAVA中利用public static final的组合方式对常量进行标识
在JAVA中利用public static final的组合方式对常量进行标识(固定格式). 对于在构造方法中利用final进行赋值的时候,此时在构造之前系统设置的默认值相对于构造方法失效. 常量(这 ...
- java 中利用反射机制获取和设置实体类的属性值
摘要: 在java编程中,我们经常不知道传入自己方法中的实体类中到底有哪些方法,或者,我们需要根据用户传入的不同的属性来给对象设置不同的属性值,那么,java自带的反射机制可以很方便的达到这种目的,同 ...
- JAVA中利用反射机制进行对象和Map相互转换的方法
JAVA的反射机制主要作用是用来访问对象的属性.方法等等.所以,JAVA中对象和Map相互转换可以利用JAVA的反射机制来实现.例子如下: 一.对象转Map的方法 public static Map& ...
- java中的随机数Random
java中一般有两种随机数,一个是Math中random()方法,一个是Random类. 一.Math.random() : 随即生成0<x<1的小数 实例:如何写,生成随机生成 ...
- Java中Random随机数
java中一般有两种随机数,一个是Math中random()方法,一个是Random类. 一.Math.random() 随即生成0<=x<1的小数. 实例:如何写,生成随机生成出0~10 ...
- Java中利用MessageFormat对象实现类似C# string.Format方法格式化
我们在写C#代码的时候常常会使用到string.Format("待格式化字符串{0},{1},....",参数1,参数2,...),来格式化字符串,特别是拼接字符的时候,这种方式使 ...
随机推荐
- sql server数据库可疑状态解决方法
前段时间客户数据服务器断电,开机后发现数据库状态标记为可疑,可能是断电引起的数据库日志文件损坏,修复方法如下: 只有mdf文件,重建日志: --注:example为测试用数据库,相应的Example_ ...
- ROS: Ubuntu16.04安装ROS-kinetic
参考连接:SLAM: Ubuntu14.04_Kylin安装ROS-Indigo第一步: 软件源配置 1. 增加下载源(增加ubuntu版的ros数据仓库,即下载源)(通用指令适合任何版本的ros) ...
- (转)Redis研究(一)—简介
http://blog.csdn.net/wtyvhreal/article/details/41855327 Redis是一个开源的高性能键值对数据库.它通过提供多种键值数据类型来适应不同场景下的存 ...
- static关键字的定义与使用
static关键字概述 关于 static 关键字的使用,它可以用来修饰的成员变量和成员方法,被修饰的成员是属于类的,而不是单单是属于某个对象的.也就是说,既然属于类,就可以不靠创建对象来调用了. 1 ...
- Day3 分支结构
if语句的使用 在Python中,要构造分支结构可以使用if.elif和else关键字.所谓关键字就是有特殊含义的单词,像if和else就是专门用于构造分支结构的关键字,很显然你不能够使用它作为变量名 ...
- 莫烦大大keras的Mnist手写识别(5)----自编码
一.步骤: 导入包和读取数据 数据预处理 编码层和解码层的建立 + 构建模型 编译模型 训练模型 测试模型[只用编码层来画图] 二.代码: 1.导入包和读取数据 #导入相关的包 import nump ...
- 【剑指Offer】61、序列化二叉树
题目描述: 请实现两个函数,分别用来序列化和反序列化二叉树. 解题思路: 序列化是指将结构化的对象转化为字节流以便在网络上传输或写到磁盘进行永久存储的过程.反序列化是指将字节流转回结构 ...
- Codeforces Round #548 (Div. 2) C. Edgy Trees
You are given a tree (a connected undirected graph without cycles) of
- HAOI2010软件安装(树形背包)
HAOI2010软件安装(树形背包) 题意 有n个物品,每个物品最多会依赖一个物品,但一个物品可以依赖于一个不独立(依赖于其它物品)的物品,且可能有多个物品依赖一个物品,并且依赖关系可能形成一个环.现 ...
- js实现cookie有效期至当次日凌晨
实际开发中有要求用户一些行为每天一次,次日开始重新回复功能,一般前端都是通过cookie来记住用户的操作,然后进行判断当日是否还有机会,这时候需要给存储的cookie值一个有效期,让次日自动失效,重新 ...