91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么用Java寫一個猜拳小游戲

發布時間:2021-09-14 23:49:45 來源:億速云 閱讀:153 作者:chen 欄目:編程語言

這篇文章主要介紹“怎么用Java寫一個猜拳小游戲”,在日常操作中,相信很多人在怎么用Java寫一個猜拳小游戲問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么用Java寫一個猜拳小游戲”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

先看看我寫了哪些類:

Player:玩家類;

ComputerPlayer:機器人玩家類,主要用來實現機器人隨機出拳;

Game:游戲類,主要實現游戲規則的邏輯,以及正式游戲的邏輯;

TestGuessBox:代碼測試類;

Player類:

//玩家類public class Player { private String name; //玩家昵稱 private int score; //玩家積分 private String box; //玩家出的  //玩家構造函數,傳入玩家昵稱與玩家初始積分 Player(String name,int score){ this.name=name; this.score=score; }  public String getName() { return name; } public void setName(String name) { this.name = name; } public int getScore() { return score; } public void setScore(int score) { this.score = score; } public String getBox() { return box; } public void setBox(String box) { this.box = box; }  }

ComputerPlayer類

public class ComputerPlayer extends Player {   //機器人玩家構造函數,傳入機器人昵稱與初始積分 ComputerPlayer(String name, int score) { super("機器人"+name, score); // TODO Auto-generated constructor stub }  /** * 實現機器人玩家隨機出拳的邏輯 */ void punch() { String[] box = {"剪刀","石頭","布"}; int index =(int) (Math.random()*3);  this.setBox(box[index]); }}

Game類

import java.util.Scanner; public class Game { Player p; //玩家 ComputerPlayer cp; //機器人玩家  //構造函數,得到一個玩家和一個機器人玩家 Game(Player p, ComputerPlayer cp) { this.p = p; this.cp = cp; }  //開始游戲 void start() {  System.out.println("玩家"+p.getName()+   "和"+cp.getName()+"開始游戲咯");  System.out.println("您的初始積分為:"+p.getScore()+   "\n"+cp.getName()+"的積分是:"+cp.getScore());  Scanner sc=new Scanner(System.in);  while(true) {    System.out.println("請出拳(剪刀石頭布,exit退出游戲):");  String pbox=sc.next();  if(filter(pbox)) { //過濾器   if(pbox.equals("exit")) { //退出游戲   break;   }else {   p.setBox(pbox);   cp.punch();   System.out.println("您出了:"+p.getBox());   System.out.println(cp.getName()+"出了:"+cp.getBox());   int result = ruler(p,cp);   if(result>0) {    System.out.println("您贏了,贏得10積分");    p.setScore(p.getScore()+10);    cp.setScore(cp.getScore()-10);   }   else if(result<0) {    System.out.println("您輸了,扣除10積分");    p.setScore(p.getScore()-10);    cp.setScore(cp.getScore()+10);   }   else {    System.out.println("您和機器人打平了!");   }   }  }    else {  System.out.println("輸入了無法識別的關鍵字,請重新輸入:");  continue; //退出本次循環,進入下一次循環  }    }     System.out.println("本輪結束,積分情況如下:");  System.out.println("您的當前積分:"+p.getScore());  System.out.println(cp.getName()+"的當前積分:"  +cp.getScore());   }  /** * 游戲規則 *  * @param p1 玩家1 * @param cp2 機器玩家2 * @return 0為打平,1為玩家贏,-1為機器玩家贏 */ int ruler(Player p1, Player cp2) {  if (p1.getBox().equals("剪刀")) {  if (cp2.getBox().equals("石頭"))  return -1;  else if (cp2.getBox().equals("布"))  return 1; } else if (p1.getBox().equals("石頭")) {  if (cp2.getBox().equals("剪刀"))  return 1;  else if (cp2.getBox().equals("布"))  return -1; } else if (p1.getBox().equals("布")) {  if (cp2.getBox().equals("剪刀"))  return -1;  else if (cp2.getBox().equals("石頭"))  return 1; } return 0; }  /** * 過濾器 * @param s 需要過濾的文字 * @return */ boolean filter(String s) { if (s.equals("剪刀") || s.equals("石頭") || s.equals("布") || s.equals("exit")) {  return true; } else  return false; }}

TestGuessBox類

public class TestGuessBox {  public static void main(String[] args) { // TODO Auto-generated method stub Player p =new Player("小七月",100); ComputerPlayer cp=new ComputerPlayer("小丑八怪",100); Game game=new Game(p,cp); game.start();  } }

到此,關于“怎么用Java寫一個猜拳小游戲”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

台湾省| 循化| 虹口区| 凌云县| 吴桥县| 吉木乃县| 玉环县| 安仁县| 屏山县| 建水县| 壤塘县| 五大连池市| 稷山县| 永昌县| 兴义市| 集贤县| 华池县| 蒙城县| 西乡县| 包头市| 南漳县| 剑河县| 通道| 奈曼旗| 安溪县| 义马市| 福泉市| 盈江县| 屏边| 酉阳| 红河县| 黑水县| 饶平县| 桐梓县| 博兴县| 铜山县| 新巴尔虎右旗| 古蔺县| 临澧县| 黑河市| 那坡县|