Java實(shí)現(xiàn)和電腦玩剪刀石頭布游戲
剪刀石頭布游戲大家都玩過吧,今天分享Java實(shí)現(xiàn)和電腦玩剪刀石頭布游戲的具體代碼,供大家參考,具體內(nèi)容如下
游戲總類
import java.util.Scanner; public class Game { Scanner input = new _Scanner(System.in); String judge; int num1;//人返回的數(shù)字 int num2;//機(jī)器返回的數(shù)字 Computer computer = new Computer(); Person person = new Person(); boolean flage=false; int computerCount=0; int personCount=0; int pingCount=0; int count=0; public Game( ){ } public boolean start(String computerName,String inputName) { System.out.println("要開始了嗎?(y/n):"); judge = input.next(); if (judge.equals("y")) { do{ count+=1; flage=false; num1 = person.hand(); System.out.print(computerName+"出拳:"); num2 = computer.hand(); if((num1==1&&num2==1)||(num1==2&&num2==2)||(num1==3&&num2==3)){ System.out.println("平局"); System.out.println("運(yùn)氣平分秋色!?。?!"); System.out.println("出拳規(guī)則:1.剪刀2.石頭3.布"); pingCount+=1; }else if((num1==1&&num2==3)||(num1==2&&num2==1)||(num1==3&&num2==2)){ System.out.println("恭喜你,你贏了?。。。。?!"); personCount+=1; }else if((num2==1&&num1==3)||(num2==2&&num1==1)||(num2==3&&num1==2)){ System.out.println("運(yùn)氣真不好,你輸了?。。。。?!"); computerCount+=1; } System.out.println("\n是否進(jìn)行下一輪?(y/n):"); judge = input.next(); switch (judge){ case "y": flage=true; break; case "n": System.out.println(computerName+"\t\t"+"vs\t\t"+inputName ); System.out.println("對戰(zhàn)次數(shù):"+count); System.out.println("姓名\t\t"+"得分"); System.out.println(inputName +"\t\t"+personCount); System.out.println(computerName+"\t\t"+ computerCount); System.out.println("平局\t\t"+ pingCount); System.out.println("結(jié)果: \t\t呵呵 \t\t笨笨\t\t 下次加油吧"); break; } }while (flage); } else if (judge.equals("n")) { } return flage; } }
人類
import java.util.Scanner; public class Person { Scanner input=new Scanner(System.in); String personName; int personNum; int score; int num; //輸入名字 public String personName(String iputName){ this.personName=iputName; return this.personName; } //出拳 public int hand(){ System.out.print("請出拳:1.剪刀\t2.石頭\t3.布(請輸入相應(yīng)的數(shù)字):"); num=input.nextInt(); System.out.print("你出拳:"); if(num==1){ System.out.println("剪刀"); }else if(num==2){ System.out.println("石頭"); }else if(num==3){ System.out.println("布"); } return num; } }
電腦類
import java.util.Random; import java.util.Scanner; public class Computer { Scanner input = new Scanner(System.in); String name; Random random = new Random(); public String computerName( int num) { if (num == 1) { name = "劉備"; } else if (num == 2) { name = "孫權(quán)"; } else if (num == 3) { name = "曹操"; } return name; } //出拳 public int hand(){ int randomNum = random.nextInt(3) % (3 - 1 + 1) + 1; if(randomNum==1){ System.out.println("剪刀"); }else if(randomNum==2){ System.out.println("石頭"); }else if(randomNum==3){ System.out.println("布"); } return randomNum; } }
main()函數(shù)
import java.util.Scanner; public static void main(String[] args) { Scanner input=new Scanner(System.in); Computer computer=new Computer(); Person person=new Person(); Game game=new Game(); System.out.println("************************************"); System.out.println("\t\t\t猜拳\t開始"); System.out.println("************************************"); System.out.println("出拳規(guī)則:1.剪刀2.石頭3.布"); System.out.println("請選擇對方角色:1.劉備\t2.孫權(quán)\t3.曹操"); System.out.print("請輸入對戰(zhàn)的角色:"); int num = input.nextInt(); String computerName= computer.computerName(num); System.out.print("請輸入你的名字:"); String inputName=input.next(); String personName= person.personName(inputName); System.out.println(computerName+"\t\tvs\t"+personName); game.start(computerName,inputName) ; }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Java默認(rèn)傳入時(shí)間段時(shí)間的實(shí)例
下面小編就為大家?guī)硪黄狫ava默認(rèn)傳入時(shí)間段時(shí)間的實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-10-10SpringBoot停止啟動(dòng)時(shí)測試檢查rabbitmq操作
這篇文章主要介紹了SpringBoot停止啟動(dòng)時(shí)測試檢查rabbitmq操作,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09Java Runnable線程傳參,實(shí)現(xiàn)讓run訪問參數(shù)
這篇文章主要介紹了Java Runnable線程傳參,實(shí)現(xiàn)讓run訪問參數(shù),具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09解析Spring RestTemplate必須搭配MultiValueMap的理由
本文給大家介紹Spring RestTemplate必須搭配MultiValueMap的理由,本文通過實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),需要的朋友參考下吧2021-11-11Spring?Boot?項(xiàng)目中?JPA?語法的基本使用方法
這篇文章主要介紹了?Spring?Boot?項(xiàng)目中?JPA?語法的基本使用方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-10-10mybatis-plus3.4.0邏輯刪除報(bào)錯(cuò)的解決
這篇文章主要介紹了mybatis-plus3.4.0邏輯刪除報(bào)錯(cuò)的解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11