Java實現(xiàn)的剪刀石頭布游戲示例
本文實例講述了Java實現(xiàn)的剪刀石頭布游戲。分享給大家供大家參考,具體如下:
ChoiceAnswer.java
public class ChoiceAnswer { String texts[] = { "石頭", "剪刀", "布" }; int value; // 【1】石頭\t【2】剪刀\t【3】布 String getText() { return texts[value - 1]; } ChoiceAnswer(int value) { this.value = value; } /** * 返回0表示平手,返回1表示贏,返回-1表示輸 */ int compTo(ChoiceAnswer c) { if (value == c.value) { return 0; } if (value + 1 == c.value || (value == 3 && c.value == 1)) { return 1; } return -1; } }
Game.java
import java.util.Scanner; public class Game { void p(String s) { System.out.println(s); } void showWelcome() { p("歡迎使用······"); p("請選擇:【1】石頭\t【2】剪刀\t【3】布"); } @SuppressWarnings("resource") ChoiceAnswer getUserChoice() { Scanner sc = new Scanner(System.in); int userChoice = Integer.parseInt(sc.nextLine()); while (userChoice < 1 || userChoice > 3) { p("你輸入的不正確!請重新輸入!"); userChoice = Integer.parseInt(sc.nextLine()); } return new ChoiceAnswer(userChoice); } ChoiceAnswer getComputerChoice() { int computerChoice = (int) ((Math.random() * 3) + 1); return new ChoiceAnswer(computerChoice); } void showResult(ChoiceAnswer userChoice, ChoiceAnswer computerChoice) { int result = userChoice.compTo(computerChoice); if (result == 0) { System.out.println("平手,您和電腦均選擇了:" + userChoice.getText()); } else if (result == 1) { System.out.println("恭喜,您贏了!您選擇了:" + userChoice.getText() + "; 電腦選擇了:" + computerChoice.getText()); } else { System.out.println("對不起,您敗了!您選擇了:" + userChoice.getText() + ";電腦選擇了:" + computerChoice.getText()); } } void start() { showWelcome(); ChoiceAnswer userChoice = getUserChoice(); ChoiceAnswer computerChoice = getComputerChoice(); showResult(userChoice, computerChoice); } public static void main(String a[]) { System.out.println("腳本之家測試結果:"); new Game().start(); } }
運行結果:
更多關于java算法相關內容感興趣的讀者可查看本站專題:《Java數(shù)據(jù)結構與算法教程》、《Java操作DOM節(jié)點技巧總結》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對大家java程序設計有所幫助。
相關文章
解決沒有@RunWith 和 @SpringBootTest注解或失效問題
這篇文章主要介紹了解決沒有@RunWith 和 @SpringBootTest注解或失效問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-04-04Java數(shù)據(jù)結構中的HashMap和HashSet詳解
HashMap和HashSet都是存儲在哈希桶之中,通過本文我們可以先了解一些哈希桶是什么,本文結合實例代碼給大家介紹的非常詳細,需要的朋友參考下吧2023-10-10IDEA 2020.1 for Mac 下載安裝配置及出現(xiàn)的問題小結
這篇文章主要介紹了IDEA 2020.1 for Mac 下載安裝配置及出現(xiàn)的問題小結,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03springboot 如何通過SpringTemplateEngine渲染html
通過Spring的Thymeleaf模板引擎可以實現(xiàn)將模板渲染為HTML字符串,而不是直接輸出到瀏覽器,這樣可以對渲染后的字符串進行其他操作,如保存到文件或進一步處理,感興趣的朋友跟隨小編一起看看吧2024-10-10Java實現(xiàn)雪花算法的原理和實戰(zhàn)教程
這篇文章主要介紹了Java實現(xiàn)雪花算法的原理和實戰(zhàn)教程,本文通過語言表述和代碼的實現(xiàn)講解了該項算法,,需要的朋友可以參考下2021-06-06