Java開發(fā)實現(xiàn)猜拳游戲
本文實例為大家分享了Java實現(xiàn)猜拳游戲的具體代碼,供大家參考,具體內(nèi)容如下
一、問題簡介
通過控制臺方式實現(xiàn)一個人機對戰(zhàn)的猜拳游戲,用戶通過輸 入(1.剪刀2.石頭3.布),機器隨機生成(1.剪刀2.石頭3.布),勝者積分,3局以后通過積分的多少判定勝負。
二、代碼邏輯簡介
1、向用戶解釋比賽規(guī)則;2、接收用戶輸入的內(nèi)容并判斷用戶輸入的內(nèi)容是否符合要求,如果不符合,重新輸入。3、電腦自動生成數(shù)字;4、根據(jù)電腦和用戶輸入的內(nèi)容,進行比較二者的勝負5、讓用戶連續(xù)進行多場比賽,直到一方達到3分,比賽結(jié)束。
三、知識點
1、掌握Java的Scanner、while循環(huán)、switch、if 判斷語句,能判別用戶輸入的類型是否為int類型。2、部分封裝內(nèi)容。3、能熟練梳理游戲的邏輯。
四、代碼
package homework;import java.util.Random;import java.util.Scanner;class Demo3 { public static void main(String[] args) { game g=new game(); g.caiquan(); }}//確定用戶和電腦猜拳內(nèi)容class game{ String people; String computer; int count1; int count2; public void caiquan() { //解釋比賽規(guī)則 System.out.println('猜拳游戲n比賽規(guī)則:用戶通過輸入數(shù)字(1-剪刀,2—石頭,3-布)與電腦進行對戰(zhàn),當(dāng)某一方的分數(shù)達到率先達到10分,該方勝利!'); while(true) { System.out.println('請輸入數(shù)字:'); int a; //判斷用戶輸入的內(nèi)容是否 while (true) { Scanner input = new Scanner(System.in); //正確接收用戶輸入的內(nèi)容 if (input.hasNextInt()) { int b=input.nextInt(); if (b>0&&b<4) { a=b; break ; }else { System.out.println('輸入的數(shù)字不在規(guī)定的范圍,請重新輸入'); b=input.nextInt(); } }else { System.out.println('輸入的不是數(shù)字錯誤,請重新輸入'); } } switch (a) { case 1: people = '剪刀'; break; case 2: people ='石頭'; break; case 3: people ='布'; break; } //電腦模擬的內(nèi)容 Random r=new Random(); int b = r.nextInt(3)+1; switch (b) { case 1: computer = '剪刀'; break; case 2: computer ='石頭'; break; case 3: computer ='布'; break; } //比較兩者勝負 if(a==b) { System.out.println('本場比賽平局!因為你輸入的是'+people+',電腦輸入的是'+computer+'。用戶積分為:'+count1+'電腦積分為:'+count2); }else if(a==1&&b==2||a==2&&b==3||a==3&&b==1) { count1++; System.out.println('恭喜你,你獲勝!因為你輸入的是'+people+',電腦輸入的是'+computer+'。'+count1); }else { count2++; System.out.println('很遺憾,本局電腦獲勝!因為你輸入的是'+people+',電腦輸入的是'+computer+'。用戶積分為:'+count1+',電腦積分為:'+count2); } //比較二者的積分,確定最終的勝利者 if (count1==3||count2==3) { System.out.println('比賽結(jié)束'); if (count1>count2) { System.out.println('恭喜你,獲得最終勝利!n你獲得'+count1+'分,電腦獲得'+count2+'分。'); }else { System.out.println('很遺憾,電腦獲得最終的勝利。n你獲得'+count1+'分,電腦獲得'+count2+'分。'); } break; } } }}
更多有趣的經(jīng)典小游戲?qū)崿F(xiàn)專題,分享給大家:
C++經(jīng)典小游戲匯總
python經(jīng)典小游戲匯總
python俄羅斯方塊游戲集合
JavaScript經(jīng)典游戲 玩不停
java經(jīng)典小游戲匯總
javascript經(jīng)典小游戲匯總
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 利用CSS3新特性創(chuàng)建透明邊框三角2. html清除浮動的6種方法示例3. CSS3實例分享之多重背景的實現(xiàn)(Multiple backgrounds)4. vue實現(xiàn)將自己網(wǎng)站(h5鏈接)分享到微信中形成小卡片的超詳細教程5. 不要在HTML中濫用div6. 使用css實現(xiàn)全兼容tooltip提示框7. 詳解CSS偽元素的妙用單標(biāo)簽之美8. JavaScript數(shù)據(jù)類型對函數(shù)式編程的影響示例解析9. CSS代碼檢查工具stylelint的使用方法詳解10. Vue3使用JSX的方法實例(筆記自用)
