一、案例介紹
我們在日常生活中,總會看見或者親身體會過數字炸彈游戲。
猜數字案例具有的功能呢?取值數字1~100之中的一個數字,說中數字的人需要收到響應的懲罰。
游戲操作如下:
- 游戲后台隨機自動生成1~100其中的一個整數數字,然后用戶通過鍵盤輸入數字。
- 如果玩家說的數字和后台生成的數字一樣,則將會接受響應的懲罰。
- 如果不一樣將會再次生成新的范圍:例如:后台數字為31,玩家說出數字40,則新的范圍變為1~40,如果玩家說出數字11,則新的范圍變為11~100.
- 直至玩家說出數字和后台生成數字一樣,游戲結束。
二、需要知識點
1.Random類
2.Scanner類
3.循環結構語句
4.選擇結構語句
三、案例需求分析
數字踩雷分析如下:
1.后台通過Random類隨機生成1~100之間的一個整數。
2.用戶通過Scanner類使用鍵盤輸入1個整數。
3.通過語句對用戶輸入的整數進行判斷。
四、實現代碼
public class Demo { public static void main(String[] args) { //1.通過Random類中方法nextInt(),生成一個1-100之間的隨機數randomNumber int randomNumber = new Random().nextInt(100); System.out.println("隨機數已生成!"); //需要定義邊界0和100 int frontNumber = 0; int behindNumber = 100; //2.輸入用戶所猜的數字enterNumber System.out.println("----請輸入您猜的數字:----"); Scanner scanner = new Scanner(System.in); int enterNumber = scanner.nextInt(); //3.通過while循環,進行猜數字對錯判斷 while (enterNumber != randomNumber){ if (enterNumber > randomNumber) { //若猜的數大於炸彈數字,那么將猜的數作為最大邊界 System.out.println("在"+ frontNumber + "~" + enterNumber + "之間"); behindNumber = enterNumber; System.out.println("繼續猜:"); enterNumber = scanner.nextInt(); } else { //若猜的數小於炸彈數字,那么將猜的數作為最小邊界 System.out.println("在"+ enterNumber + "~" + behindNumber +"之間"); frontNumber = enterNumber; System.out.println("繼續猜:"); enterNumber = scanner.nextInt(); } } //3.游戲結束 if (enterNumber == randomNumber) { System.out.println("\\\\\\!!!!!!!!!!!!!!!//////"); System.out.println("------!!!!!BOOM!!!!!!------"); System.out.println("//////!!!!!!!!!!!!!!!\\\\\\"); System.out.println("炸彈數字就是"+ randomNumber); } } }
