所以,这次写了一个接口和方法调用版本的,方便于后期的维护和拓展。

首先,写程序之前要先明白游戏的需求:

1.电脑和人各生成“石头、剪刀、布”中任意一个结果。

2.比较电脑和人各自的“值”,并输出结果(值代表:石头、剪刀、布)。

开始写代码:

【需求1】

/*

新建Computer接口和Person接口,并且在其中生成自己的随机数(随机数的值为:0~2):

*/

public interface Computer {

int computerIntResult = new Random().nextInt(3);

}

public interface Person {

int personIntResult = new Random().nextInt(3);

}

/*1.因为电脑和人生成的是数字,而我们最后输出的是“石头剪刀布”的汉字,所以我们需要有int和String的虚拟转化方法,即change类。

2.在change类中创建changeShow方法,

3.name的值用来区分电脑和人的不同结果

4.changeNumber的值用来接收人和电脑的随机数。

5.新建一个stringRandomNumber的变量,用于输出虚拟转化后的结果,=null是为了以后要是写循环就可以清除上一次的值。

6.在switch中的表达式我们用changeNumber,当传过来的值(电脑或者人的随机数)为0的时候,stringRandomNumber的值为:剪刀(1和2就不解释了)。

7.最后输出:Person/Computer出的是:剪刀/石头/布

*/

public class Change{

public void changeShow(String name,int changeNumber){

String stringRandomNumber= null;

switch(changeNumber){

case 0:

stringRandomNumber="剪刀";

break;

case 1:

stringRandomNumber="布";

break;

case 2:

stringRandomNumber="石头";

break;

default:

break;

}

System.out.println(name+"出的是:"+stringRandomNumber);

}

}

【需求2】

/*

1.写一个类Compare实现Computer和Person的接口,这个类是用来比较人和电脑各自值的结果。

2.在类中写一个show方法,方便于之后在测试类中调用测试。

3.写两个输出语句提示出人和电脑各自生成的随机数为多少。

4.调用Change类里面的changeShow方法并且分别将电脑和人的随机数赋值给changeShow方法里面的changeNumber,实现将随机数输出为汉字。

5.使用电脑和人的随机数进行判断最后的结果。

*/

public class Compare implements Computer,Person{

public static void show(){

System.out.println("电脑随机数为:"+computerIntResult);

System.out.println("人的随机数为:"+personIntResult);

Change change= new Change();

change.changeShow("Computer",computerIntResult);

change.changeShow("Person",personIntResult);

if(computerIntResult>personIntResult){

System.out.println("最终结果是:电脑获胜!");

}else if(computerIntResult==personIntResult){

System.out.println("最终结果是:平局!");

}else{

System.out.println("最终结果是:人获胜!");

}

}

}

/*

最后编写测试类TestMain直接调用Compare类中的show方法

*/

public class TestMain {

Compare compare = new Compare();

public static void main(String [] args){

Compare.show();

}

}

/*

输出结果(例举一种):

*/

电脑随机数为:0

人的随机数为:2

Computer出的是:剪刀

Person出的是:石头

最终结果是:人获胜!

【以下为完整代码】

剪刀石头布java_Java简化实现石头剪刀布游戏相关推荐

  1. 石头剪刀布游戏web_Web开发教程-剪刀石头布

    石头剪刀布游戏web This web development tutorial shows how to use JavaScript, HTML, and CSS to create a rock ...

  2. Python编程基础:第三十七节 石头剪刀布游戏Rock, Paper, Scissors Game

    第三十七节 石头剪刀布游戏Rock, Paper, Scissors Game 前言 实践 前言 我们这一节的内容主要是对前边学习内容的一个综合应用,以石头,剪刀,布游戏为例讲解列表.随机数.用户输入 ...

  3. 用python编写石头剪刀布游戏

    #剪刀石头布游戏import random #导入random库 print("和电脑进行石头剪刀布游戏") while True: #一直进行游戏,直到输入q退出a = inpu ...

  4. 石头剪刀布游戏高级版(Java编写)

    石头剪刀布 1.问题描述 [问题描述] 用 JAVA 语言设计如下界面的石头剪刀布游戏.游戏的一方点击界面上石头.剪刀.布按钮,游戏的 另一方计算机随机选择,然后给出游戏结果. [基本要求] 按照下面 ...

  5. 写给三岁娃的石头剪刀布游戏

    一.前言   前阵子学习python,秉承着边学习边实践的目的写了个石头剪刀布的游戏,执行方式是在shell环境直接执行python代码,Python学习笔记之剪刀石头布让娃玩,娃选择1,2,3就可以 ...

  6. python设计石头剪刀布游戏五次游戏体验_Python设计一个石头、剪刀、布游戏

    石头剪刀布是一种很受欢迎的游戏.我们将在python编程语言中实现石头剪刀布(Rock, Paper, and Scissors).Python是最简单的编程语言之一,理解它不需要花费太多时间.让我们 ...

  7. 利用Java模拟石头剪刀布游戏

    模拟石头剪刀布游戏 import java.util.Scanner;public class Sjb {public static void main(String[] args) {Scanner ...

  8. 3.9 编写程序,模拟石头剪刀布游戏。程序随机产生一个数,这个数为2、1或0,分别表示石头剪刀和布。

    1. 题目要求编写程序,模拟石头剪刀布游戏.程序随机产生一个数,这个数为2.1或0,分别表示石头剪刀和布.提示用户输入值2.1或0.然后显示一条消息,表明用户和计算机谁赢了游戏.下面是运行示例:你出什 ...

  9. 几乎所有的RPG游戏(一种源自《龙与地下城》的游戏类型)在进入游戏时都会让用户自己来创建自己喜欢的角色。本次上机要求编写一个简化的创建游戏角色的程序。

    一:题目分析 1.功能描述 几乎所有的RPG游戏(一种源自<龙与地下城>的游戏类型)在进入游戏时都会让用户自己来创建自己喜欢的角色.本次上机要求编写一个简化的创建游戏角色的程序. 2.游戏 ...

最新文章

  1. android 命令行创建模拟器,在命令行创建、删除和浏览AVD、使用android模拟器
  2. 8080端口被占用_Spring Cloud IPv6端口问题排坑
  3. 有机化学芳烃 芳香性
  4. Java代码优化:使用构造函数和使用一个setter的效率差别
  5. java多线程同时运行_Java实现的两个线程同时运行案例
  6. Zookeeper常用命令行及API
  7. C函数实现返回多个值的方法
  8. Flutter AnimatedAlign 使用解析
  9. 【Kafka】Kafka 配置 SCRAM认证
  10. 优质书籍资源仓库推荐【欢迎推送书籍】
  11. vba 正则表达式_VBA中正则表达式与数组结合的应用案例
  12. 宇视网络摄像机存储功能配置指导
  13. 稳定同位素(stable isotope)标记氨基酸,聚氨基酸,PEI,聚合物,抑制剂,离子液体,石墨烯,黑磷,透明质酸,荧光材料,脂质体复合物
  14. python父亲节祝福_用python祝福父亲节_父亲节送给父亲的祝福语,挑一句话发朋友圈!...
  15. strings.Builder 源码阅读与分析
  16. css3彩色3D文字上下漂浮动画js特效
  17. python爬取王者荣耀高清图
  18. 接雨水,Leet#42
  19. idea修改单行注释颜色
  20. 告诉你四川火锅的秘密配方

热门文章

  1. 基于新型战争策略优化算法的光伏模型优化(Matlab代码实现)
  2. java soap服务端实例_CXF框架实现webservice实例
  3. mysql为什么不能卸载_mysql卸载无法重装怎么办?
  4. 【Linux篇】之samba服务器配置
  5. CentOS7 Samba服务器配置
  6. 你的计算机无法运行AI任务,win10系统此应用无法在你的电脑上运行的解决方法...
  7. SpringBoot集成SocketIO
  8. 仿百度糯米团顶部搜索栏动画效果
  9. 夜神模拟器(安卓9版本)中脱壳
  10. c语言8进制数与16进制数,C语言中的二进制数、八进制数和十六进制数