java版簡(jiǎn)單的猜數(shù)字游戲?qū)嵗a
游戲簡(jiǎn)述
游戲涉及到game和player兩個(gè)對(duì)象,game會(huì)產(chǎn)生介于0-9之間的隨機(jī)數(shù),下面看看詳細(xì)的實(shí)現(xiàn)過程。
程序邏輯:
1.GameLauncher這個(gè)類帶有main()方法,是應(yīng)用程序的入口點(diǎn)
2.main()中會(huì)創(chuàng)建出GuessGame對(duì)象,并調(diào)用她的startGame()方法
3.startGame()方法是游戲的起點(diǎn),它會(huì)創(chuàng)建3個(gè)player,然后挑出猜測(cè)的隨即數(shù)字,它會(huì)要求player猜測(cè)并檢查結(jié)果,過程會(huì)被列出來
類:
•GameLauncher.class
•GuessGame.class
•Player.class
GameLauncher.class
public class Gamelauncher {
public static void main(String[] args) {
GuessGame game = new GuessGame();
game.startGame();
}
}
GuessGame.class
public class GuessGame{
//用3個(gè)實(shí)例變量分別表示3個(gè)player對(duì)象
Player p1;
Player p2;
Player p3;
public void startGame(){
//創(chuàng)建player對(duì)象
p1= new Player();
p2 = new Player();
p3= new Player();
//定義3個(gè)變量來保存是否猜中
int guessp1 = 0;
int guessp2 =0;
int guessp3 = 0;
//定義3個(gè)變量來保存猜測(cè)的數(shù)字
boolean p1isright = false;
boolean p2isright =false;
boolean p3isright =false;
int tarnum =(int)(Math.random()*30); //產(chǎn)生謎底數(shù)字
System.out.println("i guess 1 to 30");
while(true)
{
System.out.println("number to guess is "+tarnum);
p1.guess(); //調(diào)用Player中g(shù)uess方法
p2.guess();
p3.guess();
//取得每個(gè)player所猜測(cè)的數(shù)字將其列出
guessp1 =p1.number;
System.out.println("one "+guessp1 );
guessp2 = p2.number;
System.out.println("two "+guessp2);
guessp3=p3.number;
System.out.println("three "+guessp3);
//檢查是否猜中,
if (guessp1==tarnum)
{
p1isright=true;
}
if (guessp2==tarnum)
{
p2isright=true;
}
if (guessp3==tarnum)
{
p3isright=true;
}
//如果猜中一個(gè)或者多個(gè)...
if(p1isright||p2isright||p3isright)
{
System.out.println("we are a winner");
System.out.println("one "+p1isright);
System.out.println("two "+p2isright);
System.out.println("three "+p3isright);
System.out.println("game is over");
break; //因?yàn)樯厦鎤hile為true,所以會(huì)一直執(zhí)行,直到if語句為真,執(zhí)行下面的break才會(huì)結(jié)束循環(huán)
}
else
{System.out.println("123");}
}
}
}
Player.class
public class Player {
int number = 0; //要被猜的數(shù)字
public void guess(){
number =(int )(Math.random()*30);
System.out.println("i guessing"+number);
}
}
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
SpringBoot使用jasypt加解密密碼的實(shí)現(xiàn)方法
這篇文章主要介紹了SpringBoot使用jasypt加解密密碼的實(shí)現(xiàn)方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-10-10
Spring+SpringMVC配置事務(wù)管理無效原因及解決辦法詳解
這篇文章主要介紹了Spring+SpringMVC配置事務(wù)管理無效原因及解決辦法詳解,具有一定借鑒價(jià)值,需要的朋友可以參考下2017-12-12
Java安全 ysoserial CommonsCollections2示例分析
這篇文章主要為大家介紹了Java安全 ysoserial CommonsCollections2示例分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-11-11
SpringCloud Hystrix-Dashboard儀表盤的實(shí)現(xiàn)
這篇文章主要介紹了SpringCloud Hystrix-Dashboard儀表盤的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08
java項(xiàng)目中的絕對(duì)路徑和相對(duì)路徑用法說明
這篇文章主要介紹了java項(xiàng)目中的絕對(duì)路徑和相對(duì)路徑用法說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-08-08
使用maven對(duì)springboot項(xiàng)目進(jìn)行瘦身分離jar的多種處理方案
springboot項(xiàng)目打包一般我們都使用它自帶的spring-boot-maven-plugin插件,這個(gè)插件默認(rèn)情況下,會(huì)把所有的依賴包全部壓縮到一個(gè)jar里面,今天給大家分享幾種方案來如何減小我們的打包文件,需要的朋友可以參考下2024-02-02
Springboot項(xiàng)目如何兼容老的Spring項(xiàng)目問題
這篇文章主要介紹了Springboot項(xiàng)目如何兼容老的Spring項(xiàng)目問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08

