使用java实现猜拳小游戏

本文实例为大家分享了java实现猜拳小游戏的具体代码,供大家参考,具体内容如下

实现下图要求

public class User {

 private String u_name;

 private int u_score;

 public User() {
  super();
 }

 public User(String name, int score) {
  super();
  this.u_name = name;
  this.u_score = score;
 }

 public String getName() {
  return u_name;
 }

 public void setName(String name) {
  this.u_name = name;
 }

 public int getScore() {
  return u_score;
 }

 public void setScore(int score) {
  this.u_score = score;
 }
 /**
  * 出拳方法
  * @param choice 选择的数字代表出拳(1:石头2:剪刀3:布)
  * @return str 返回你所选择的出拳
  */
 public String chuQuan(int choice){
  String str = "";
  switch (choice) {
  case 1:
   str = "石头";
   break;
  case 2:
   str = "剪刀";
   break;
  case 3:
   str = "布";
   break;
  default:
   System.out.println("未知错误");
   break;
  }
  return str;
 }

}

public class Computer {

 private String c_name;

 private int c_score;

 public String getName() {
  return c_name;
 }

 public void setName(String name) {
  this.c_name = name;
 }

 public int getScore() {
  return c_score;
 }

 public void setScore(int score) {
  this.c_score = score;
 }
     /**
  * 出拳方法
  * @param choice 选择的数字代表出拳(1:石头2:剪刀3:布)
  * @return str 返回你所选择的出拳
  */
 public String chuQuan(int choice){
  String str = "";
  switch (choice) {
  case 1:
   str = "石头";
   break;
  case 2:
   str = "剪刀";
   break;
  case 3:
   str = "布";
   break;
  default:
   System.out.println("未知错误");
   break;
  }
  return str;
 }
}

import java.util.Scanner;

public class Game {

 Scanner input = new Scanner(System.in);

 private User user;

 private Computer computer;

 private int count;

 private int c_score;

 private int u_score;

 //初始化方法
 public void init(){
  user = new User();
  computer = new Computer();
  System.out.println("-----------------欢迎进入游戏世界------------------");
  System.out.println("\t   **************************");
  System.out.println("\t\t**  猜拳,开始    **");
  System.out.println("\t   **************************");
  System.out.println();
  System.out.println("出拳规则:1.石头  2.剪刀  3.布");
  System.out.print("请选择对方角色:(1:曹操  2:孙权  3:刘备):");
  int key = input.nextInt();
  switch (key) {
  case 1:
   computer.setName("曹操");
   break;
  case 2:
   computer.setName("孙权");
   break;
  case 3:
   computer.setName("刘备");
   break;
  default:
   System.out.println("非法输入...");
   break;
  }
  System.out.print("请输入你的姓名:");
  user.setName(input.next());
  System.out.println(user.getName()+"  VS  "+computer.getName());
  begin();
 }

 //是否开始执行  循环执行直到输入n结束
 public void begin(){
  System.out.print("要开始吗(y/n):");
//  boolean falg = true;
  String str = input.next();
  if(str.equals("y")){
   while(true){
    score();
    System.out.print("是否开始下一轮:(y/n)");
    String str1 = input.next();
    count++;
    if(str1.equals("y")){

    }else{
//     falg = false;
     break;
    }
   }
  }
  show();
 }

 //人和机器出拳并判断胜负 此处计算比赛次数 双方得分
 public void score(){
  System.out.print("请出拳:");
  int choice1 = input.nextInt();
  String str1 = user.chuQuan(choice1);
  int choice2 = (int)(Math.random()*3+1);
  String str2 = computer.chuQuan(choice2);
  System.out.println("你出拳"+str1);
  System.out.println(computer.getName()+"出拳"+str2);
  if(choice1 == choice2){
   System.out.println("结果:平局");

  }else if(choice2-choice1==-1||choice2-choice1==2){
   System.out.println("结果:"+computer.getName()+"获胜...");
   c_score++;
   computer.setScore(c_score);

  }else if(choice1-choice2==-1||choice1-choice2==2){
   System.out.println("结果:恭喜你,你获胜...");
   u_score++;
   user.setScore(u_score);

  }
 }

 //显示比赛结果并比较得得出最后胜负
 public void show(){
  System.out.println("--------------------------------");
  System.out.println(user.getName()+"  VS  "+computer.getName());
  System.out.println("对战次数:"+count+"\n\n");
  System.out.println("姓名\t得分");
  System.out.println(user.getName()+"\t"+user.getScore());
  System.out.println(computer.getName()+"\t"+computer.getScore()+"\n");
  if(user.getScore()>computer.getScore()){
   System.out.println("结果:恭喜恭喜");
  }else if(user.getScore()<computer.getScore()){
   System.out.println("结果:再接再厉");
  }else{
   System.out.println("结果:平局");
  }
  System.out.println("--------------------------------");
 }

}

测试类

public class Test {

 public static void main(String[] args) {
  // TODO Auto-generated method stub
  Game game = new Game();
  game.init();
 }

}

这样猜拳小游戏就实现了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • java实现猜拳游戏试题

    本文实例为大家分享了java实现猜拳游戏的具体代码,供大家参考,具体内容如下 试题描述 通过控制台方式实现一个人机对战的猜拳游戏,用户通过输 入(1.剪刀 2.石头 3.布),机器随机生成(1.剪刀 2.石头 3.布),胜者积分,n 局以后通过积分的多少判定胜负. 使用面向对象编程思想实现一个猜拳游戏,以下代码仅供参考! 思路 (1)首先需要明确的对象有哪些,玩家以及机器,和游戏规则: (2)玩家需要出拳,机器随机出拳,游戏规则就是判断输赢和积分的多少,并显示最后的结果. 1.定义一个玩家类pl

  • Java控制台实现猜拳游戏小游戏

    本文实例为大家分享了Java猜拳游戏的具体代码,供大家参考,具体内容如下 先来看一下效果图: 首先我们创建一个Person类,这个类有name和score两个属性,有play这个方法,源代码如下: package com.samoy; public class Person { public String name; public int score; public Person(String name, int score) { this.name = name; this.score = s

  • java实现数字猜拳小游戏

    本文编写一个java数字猜拳的小游戏,具体实现很简单 package guenum; import java.util.ArrayList; import java.util.Scanner; public class Demo { // private static Object list; public static void main(String ad[]) { System.out.println("-------------------------------------小游戏---

  • JavaSE实现猜拳游戏

    本文实例为大家分享了JavaSE实现猜拳游戏的具体代码,供大家参考,具体内容如下 import java.util.Random; import java.util.Scanner; public class CaiQuan { private String userName;//存储用户名 private String cName;//存储对手 private int cNameNum;//存储玩家选择的对手代号 private String userInfo;//用户出拳信息 private

  • java实现猜拳小游戏

    一天下午无聊,突发奇想做的一个简单的小游戏. 下面是我做的过程中思路与步骤:` /* 需求:由后台输入剪刀石头布,然后电脑随机输出一项,比较判断输赢 追加需求:可继续游戏,并当输入错误时提供重新输入 思路: 1.创建一个可以输入的渠道 2.能让电脑随机输出一个结果 3.用一些语句来判断比较 4.用do-while语句来完成继续游戏 5.在判断是否继续游戏时,只能输入Y/N,输入其他则重新输入 步骤: 1.输入格式:import java.util.Scanner; 2.随机格式:Math.ran

  • Java开发实现人机猜拳游戏

    本文实例为大家分享了Java开发实现人机猜拳游戏的具体代码,供大家参考,具体内容如下 猜拳游戏 游戏规则:人和电分别出剪刀.石头.布,直到人战胜电脑,游戏结束. 整体分析: 1.总体是一个循环 ->>>(while循环终止条件是人战胜电脑,break:) 2.人的出拳数字从键盘获得 ->>>(Scanner) 3.电脑的出拳数字随机产生范围是(1,2,3)->>>Math.random() 4.出拳的数字转换为文字 ->>>switc

  • java实现猜拳游戏

    本文实例为大家分享了java实现猜拳游戏的具体代码,供大家参考,具体内容如下 package com.farsight.session7; import java.util.Scanner; /** * 根据输入的数字,判断数组strs的值 然后进行逻辑判断 */ public class 猜拳 { public static void main(String[] args) { String[] strs = { "石头", "剪刀", "布"

  • Java实现人机猜拳小游戏

    本文实例完成人机猜拳互动游戏的开发,供大家参考,具体内容如下 阶段一:实验--分析业务,创建用户类 1.分析业务,抽象出类.类的特征和行为 2.创建出用户类 阶段二:实验--创建出计算机类 1.创建计算机类Computer.实现计算机出拳 2.产生一个1-3的随机数,模拟计算机的出拳结果 阶段三:实验--创建游戏类,选择对战对手 1.创建游戏类Game 2.编写游戏类的初始化方法initial() 3.编写游戏类的开始游戏方法startGame() 阶段四:实验--实现一局对战 分别调用用户类和

  • Java实现人机对战猜拳游戏

    本文实例为大家分享了Java实现人机对战猜拳游戏的具体代码,供大家参考,具体内容如下 通过控制台方式实现一个人机对战的猜拳游戏 1.用户通过输入(2.剪刀 0.石头 5.布) 2.机器随机生成(2.剪刀 0.石头 5.布) 3.胜者积分 4.n 局以后通过积分的多少判定胜负. 开发工具:IDEA 分析: 1.在这个猜拳游戏里首先要解决的是机器人如何出拳? 解决:通过预设一个字符串,然后通过Random类的nextInt方法获取到一个随机整数,将这个整数作为字符串的下标,再通过循环的方法来组成一个

  • Java面向对象之猜拳游戏

    Java面向对象之猜拳游戏,供大家参考,具体内容如下 1 要求 与电脑进行猜拳并记录分数. 2 Computer.java 源代码(电脑自动随机出拳) public class Computer { public void Fingers(int index) { String[] fingers = {"石头", "剪刀", "布"}; System.out.println("电脑出拳:" + fingers[index])

随机推荐