Java猜數(shù)字小游戲?qū)崿F(xiàn)辦法與詳解
今天我們來實(shí)現(xiàn)一個(gè)經(jīng)典的猜數(shù)字小游戲,通過這個(gè)簡(jiǎn)單的項(xiàng)目可以幫助初學(xué)者熟悉 Java 的基本語法、流程控制和用戶交互等知識(shí)點(diǎn)。
游戲功能說明
- 程序隨機(jī)生成 1-100 之間的整數(shù)作為答案
- 用戶輸入數(shù)字進(jìn)行猜測(cè)
- 程序根據(jù)猜測(cè)結(jié)果給出提示(太大 / 太小 / 正確)
記錄用戶猜測(cè)次數(shù),猜對(duì)后顯示恭喜信息和猜測(cè)次數(shù)
import java.util.Scanner;
import java.util.Random;
public class GuessNumberGame {
public static void main(String[] args) {
// 歡迎信息
System.out.println("===== 猜數(shù)字小游戲 =====");
System.out.println("游戲規(guī)則:");
System.out.println("1. 系統(tǒng)會(huì)隨機(jī)生成1-100之間的一個(gè)整數(shù)");
System.out.println("2. 請(qǐng)輸入你猜測(cè)的數(shù)字,系統(tǒng)會(huì)提示你太大或太小");
System.out.println("3. 直到你猜對(duì)為止,加油!");
System.out.println("======================");
// 生成1-100之間的隨機(jī)數(shù)
Random random = new Random();
int targetNumber = random.nextInt(100) + 1;
// 初始化猜測(cè)次數(shù)和輸入掃描器
int guessCount = 0;
Scanner scanner = new Scanner(System.in);
int userGuess = 0;
// 游戲主循環(huán)
do {
System.out.print("請(qǐng)輸入你猜測(cè)的數(shù)字(1-100):");
// 驗(yàn)證輸入是否為有效數(shù)字
while (!scanner.hasNextInt()) {
System.out.println("輸入錯(cuò)誤,請(qǐng)輸入一個(gè)整數(shù)!");
scanner.next(); // 清除無效輸入
System.out.print("請(qǐng)重新輸入:");
}
userGuess = scanner.nextInt();
guessCount++;
// 判斷猜測(cè)結(jié)果并給出提示
if (userGuess > targetNumber) {
System.out.println("太大了!再試試小一點(diǎn)的數(shù)字~");
} else if (userGuess < targetNumber) {
System.out.println("太小了!再試試大一點(diǎn)的數(shù)字~");
} else {
// 猜對(duì)了,顯示結(jié)果
System.out.println("\n恭喜你猜對(duì)了!答案就是:" + targetNumber);
System.out.println("你一共猜了 " + guessCount + " 次");
// 根據(jù)猜測(cè)次數(shù)給出評(píng)價(jià)
if (guessCount <= 5) {
System.out.println("太厲害了!簡(jiǎn)直是猜數(shù)字大師!");
} else if (guessCount <= 10) {
System.out.println("很不錯(cuò)!繼續(xù)努力~");
} else {
System.out.println("再接再厲,下次一定能更快猜對(duì)!");
}
}
} while (userGuess != targetNumber);
// 關(guān)閉掃描器
scanner.close();
System.out.println("\n游戲結(jié)束,謝謝參與!");
}
}這個(gè)小游戲雖然簡(jiǎn)單,但涵蓋了 Java 編程的一些基礎(chǔ)概念,適合初學(xué)者練習(xí)。你也可以嘗試擴(kuò)展它的功能,比如增加難度級(jí)別、限制最大猜測(cè)次數(shù)或添加歷史記錄等功能,讓游戲更加豐富有趣!
總結(jié)
到此這篇關(guān)于Java猜數(shù)字小游戲?qū)崿F(xiàn)辦法與詳解的文章就介紹到這了,更多相關(guān)Java猜數(shù)字小游戲內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
IntelliJ IDEA安裝目錄和設(shè)置目錄的說明(IntelliJ IDEA快速入門)
這篇文章主要介紹了IntelliJ IDEA安裝目錄和設(shè)置目錄的說明(IntelliJ IDEA快速入門),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-04-04
spring+apollo動(dòng)態(tài)獲取yaml格式的配置方式
這篇文章主要介紹了spring+apollo動(dòng)態(tài)獲取yaml格式的配置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-04-04
Mybatis中resultMap的Colum和property屬性詳解
這篇文章主要介紹了Mybatis中resultMap的Colum和property屬性,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。2022-01-01
Spring Boot配置特定屬性spring.profiles的方法
這篇文章主要介紹了Spring Boot配置特定屬性spring.profiles的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-11-11
java中File與MultipartFile互轉(zhuǎn)代碼示例
在Java開發(fā)中,當(dāng)需要將本地File對(duì)象轉(zhuǎn)換為MultipartFile對(duì)象以處理文件上傳時(shí),可以通過實(shí)現(xiàn)MultipartFile接口或使用CommonsMultipartFile類來實(shí)現(xiàn),本文提供了詳細(xì)的轉(zhuǎn)換方法和代碼示例,需要的朋友可以參考下2024-10-10
Freemaker Replace函數(shù)的正則表達(dá)式運(yùn)用
這篇文章主要介紹了Freemaker Replace函數(shù)的正則表達(dá)式運(yùn)用 的相關(guān)資料,需要的朋友可以參考下2015-12-12

