溫馨提示×

溫馨提示×

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

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

Java開發(fā)如何實現(xiàn)猜拳游戲

發(fā)布時間:2020-08-03 09:40:17 來源:億速云 閱讀:100 作者:小豬 欄目:開發(fā)技術(shù)

這篇文章主要講解了Java開發(fā)如何實現(xiàn)猜拳游戲,內(nèi)容清晰明了,對此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會有幫助。

一、問題簡介

通過控制臺方式實現(xiàn)一個人機(jī)對戰(zhàn)的猜拳游戲,用戶通過輸 入(1.剪刀2.石頭3.布),機(jī)器隨機(jī)生成(1.剪刀2.石頭3.布),勝者積分,3局以后通過積分的多少判定勝負(fù)。

二、代碼邏輯簡介

1、向用戶解釋比賽規(guī)則;
2、接收用戶輸入的內(nèi)容并判斷用戶輸入的內(nèi)容是否符合要求,如果不符合,重新輸入。
3、電腦自動生成數(shù)字;
4、根據(jù)電腦和用戶輸入的內(nèi)容,進(jìn)行比較二者的勝負(fù)
5、讓用戶連續(xù)進(jìn)行多場比賽,直到一方達(dá)到3分,比賽結(jié)束。

三、知識點(diǎn)

1、掌握J(rèn)ava的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-布)與電腦進(jìn)行對戰(zhàn),當(dāng)某一方的分?jǐn)?shù)達(dá)到率先達(dá)到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;
 }
 //比較兩者勝負(fù)
 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;
 }
 }
 }
}

看完上述內(nèi)容,是不是對Java開發(fā)如何實現(xiàn)猜拳游戲有進(jìn)一步的了解,如果還想學(xué)習(xí)更多內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI