溫馨提示×

溫馨提示×

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

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

怎么用Java實現人機猜拳小游戲

發布時間:2021-09-14 22:09:06 來源:億速云 閱讀:147 作者:chen 欄目:編程語言

本篇內容介紹了“怎么用Java實現人機猜拳小游戲”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

階段一:實驗——分析業務,創建用戶類

1.分析業務,抽象出類、類的特征和行為2.創建出用戶類

階段二:實驗——創建出計算機類

1.創建計算機類Computer。實現計算機出拳2.產生一個1—3的隨機數,模擬計算機的出拳結果

階段三:實驗——創建游戲類,選擇對戰對手

1.創建游戲類Game2.編寫游戲類的初始化方法initial()3.編寫游戲類的開始游戲方法startGame()

階段四:實驗——實現一局對戰

分別調用用戶類和計算機類的出拳方法showFist(),接受返回值并比較,給出勝負結果

階段五:實驗——實現循環對戰,并累計得分

實現循環對戰,并且累加贏家的得分

階段六:實驗——顯示對戰結果

游戲結束后,顯示對戰結果編寫showResult()方法,比較二者的得分情況,給出對戰結果

階段七:實驗——完善游戲類的startGame()

輸入并保存用戶姓名,游戲結束后顯示雙方的各自得分

Game.java

import java.util.Scanner;public class Game {Scanner sc = new Scanner(System.in);User User;//用戶玩家Computer Computer;//電腦玩家int count;//對戰次數int score;//分數//游戲類的初始化方法public void initial(){ //創建用戶對象 User= new User(); //創建電腦對象 Computer = new Computer(); //初始化對戰次數為0 count = 0;}//開始游戲的方法public void startGame(){ System.out.println("--------------------歡迎進入游戲世界-----------------------\n\n"); System.out.println("\t\t*******************"); System.out.println("\t\t**  猜拳,開始   **"); System.out.println("\t\t*******************\n\n"); System.out.println("出拳規則:1.石頭 2.剪刀 3.布"); System.out.print("請選著對方角色(1:劉備 2:孫權 3:曹操)"); int choose = sc.nextInt();//接收用戶選擇的角色 switch(choose){ case 1: Computer.computerName = "劉備";//把值賦給電腦類的name System.out.println("你選擇了"+Computer.computerName+"對戰"); break; case 2: Computer.computerName = "孫權"; System.out.println("你選擇了"+Computer.computerName+"對戰"); break; case 3: Computer.computerName = "曹操"; System.out.println("你選擇了"+Computer.computerName+"對戰"); break; default:  System.out.println("輸入有誤!");  break; } System.out.println("請輸入你的姓名:"); User.userName = sc.next(); System.out.println("要開始嗎(y/n)"); String con = sc.next(); if(con.equals("n")){//如果不開始輸入"n"的話 就提示退出 System.out.println("系統退出!"); } int perFist;//用戶出的拳 int comFist;//計算機出的拳 while(con.equals("y")){ //出拳 perFist = User.showFirst();//調用用戶類的方法 comFist = Computer.chuQuan();//調用電腦類的方法 //裁決 if((perFist == 1 && comFist == 1) ||   (perFist == 2 && comFist == 2) ||    (perFist == 3 && comFist == 3)){  System.out.println("結果:和局,真衰!");//平局 }else if((perFist == 1 && comFist == 3) ||   (perFist == 2 && comFist == 1) ||    (perFist == 3 && comFist == 2)){  System.out.println("You lost!");//用戶輸了  System.out.println("結果:你被KO");  Computer.score++;//記錄電腦贏的分數 }else{  System.out.println("You win!");//用戶贏了  System.out.println("結果:恭喜,你贏了!");  User.score++;//記錄用戶贏的分數 } count++;//對戰次數依次加一 System.out.println("是否進入下一輪(y/n)"); con = sc.next();  } //如果結束 則顯示最后的結果 showResult();}  //顯示最后的輸出結果 public void showResult(){ System.out.println("------------------------------------------------"); System.out.println(Computer.computerName+"\tVS\t"+User.userName); System.out.println("對戰次數:"+count); System.out.println("姓名"+"\t"+"積分"); System.out.println(User.userName+"\t"+User.score); System.out.println(Computer.computerName+"\t"+Computer.score); if(User.score>Computer.score){//如果用戶的分數大于電腦的分數 則用戶贏 System.out.println(User.userName+"贏了!"); }else{ System.out.println(Computer.computerName+"贏了!"); } System.out.println("-------------------------------------------------");}}

User.java

import java.util.Scanner;public class User {  String userName;//用戶名  int score;//積分  public int showFirst() {  System.out.print("請出拳:1.剪刀2.石頭3.布(輸入相應的數字):");  Scanner sc = new Scanner(System.in);  int choice = sc.nextInt();  switch(choice) {  case 1:   System.out.println("你出拳:石頭");   break;  case 2:   System.out.println("你出拳:剪刀");   break;  case 3:   System.out.println("你出拳:布");   break;  default:   System.out.println("輸入錯誤!");   break;  }  return choice;  }}

Computer.java

import java.util.Scanner;public class Computer { String computerName;//電腦名 int score;//電腦積分 public int chuQuan() {  int random =(int)(Math.random()*3)+1;  switch(random) {  case 1:  System.out.println(computerName+"出拳:石頭");  break;  case 2:  System.out.println(computerName+"出拳:剪刀");  break;  case 3:  System.out.println(computerName+"出拳:布");  break;  default:  System.out.println("輸入有錯,請重新輸入:");  break;  }  return random; }}

Main.java

public class Main {public static void main(String[] args) { Game g = new Game(); g.initial();//調用初始化方法 g.startGame();//調用開始游戲的方法}}

“怎么用Java實現人機猜拳小游戲”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

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

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女