Java实现猜数字游戏简明易懂完整代码
猜数字游戏
1 游戏规则
系统⾃动⽣成⼀个随机整数(1- 100),然后由⽤户输⼊⼀个猜测的数字,如果输⼊数字⽐⽣成数⼤,则提⽰“猜⼤了”;如果输⼊数字⽐⽣成数⼩,则提⽰“猜⼩了”;如果输⼊数字与⽣成数⼀样,则提⽰“猜对了”。
2 ⽣成随机数
Random random =new Random();//创建对象
int num = Int(100);//⽣成随机整数
Random() 的括号中,可以填写参数seed,即随机种⼦。
因为在计算机中⽣成随机数,是通过给定⼀个初始值,将其套⼊⼀个数学公式⽣成的,是“伪随机”。设置随机种⼦就固定了初始值,可以使每次随机出的数⼀样,若是不设置则默认为系统⾃动⽣成。
int num = Int(100)+1;
⼩技巧:
(1) 在不明⽩函数⽅法的定义时,可以将⿏标放到相应位置,然后按ctrl + ⿏标左键,查看⽂档注释学习使⽤。
(2) 可以在Java API⽂档中查学习,Oracle官⽹的⽂档:
3 ⽤户猜数
因为猜测是需要不断进⾏,直到猜对停⽌,所以需要⽤循环来实现。
Scanner scanner =new Scanner(System.in);
while(true){
System.out.println("请输⼊猜测的数:");
int toGuess = Int();
创建scanner的语句放在循环内外都可以,但是放在⾥⾯效率会低⼀些,因为每次循环都会创建对象;放在外⾯,在循环中可以通过Int() 的⽅式读取。
4 判定猜测正误
if(toGuess>num){
System.out.println("猜⼤了");
}else if(toGuess<num){
入门的java游戏小程序System.out.println("猜⼩了");
}else{
System.out.println("猜对了!");
break;
}
}
若是猜测正确,不能忘记break 跳出循环结束。
5 完整代码
import java.util.Random;
import java.util.Scanner;
public class Test1_6 {
public static void main(String[] args){
Random random =new Random();
int num = Int(100)+1;
Scanner scanner =new Scanner(System.in);
while(true){
System.out.println("请输⼊猜测的数:");
int toGuess = Int();
if(toGuess>num){
System.out.println("猜⼤了");
}else if(toGuess<num){
System.out.println("猜⼩了");
}else{
System.out.println("猜对了!");
break;
}
}
}
}
6 运⾏结果
7 优化猜数字游戏
7.1 菜单模块
打印出⼀个选择菜单,供⽤户选择玩游戏或者退出
public static int menu(){
System.out.println("***********************");
System.out.println(" 1、play 0、exit ");
System.out.println("***********************");
System.out.println("请输⼊您的选择:");
Scanner scanner =new Scanner(System.in);
int choice = Int();
return choice;
}
7.2 游戏模块
public static void game(){
//1、⽣成随机数
Random random =new Random();
int toGuess = Int(100)+1;
//2、使⽤Scanner让⽤户能输⼊,猜测数,并给⽤户提⽰//Scanner创建在外⾯⽐在⾥⾯效率要稍⾼⼀些
Scanner scanner =new Scanner(System.in);
while(true){
System.out.println("请输⼊你猜测的数:");
int num = Int();
if(num>toGuess){
System.out.println("猜⼤了");
}else if(num<toGuess){
System.out.println("猜⼩了");
}else{
System.out.println("恭喜你,猜对了!");
break;
}
}
}
7.3 主控制模块
通过判断⽤户的选择来选择执⾏程序
public static void guessNumberGame(){
while(true){
int choice =menu();
if(choice ==1){
game();
}else if(choice ==0){
System.out.println("⽩⽩~");
break;
}else{
System.out.println("输⼊错误,请重试...");
}
}
}
7.4 完整代码
public static void main(String[] args){ guessNumberGame();
}
public static void guessNumberGame(){
while(true){
int choice =menu();
if(choice ==1){
game();
}else if(choice ==0){
System.out.println("⽩⽩~");
break;
}else{
System.out.println("输⼊错误,请重试...");
}
}
}
public static void game(){
Random random =new Random();
int toGuess = Int(100)+1;
Scanner scanner =new Scanner(System.in); while(true){
System.out.println("请输⼊你猜测的数:");
int num = Int();
if(num>toGuess){
System.out.println("猜⼤了");
}else if(num<toGuess){
System.out.println("猜⼩了");
}else{
System.out.println("恭喜你,猜对了!");
break;
}
}
}
public static int menu(){
System.out.println("***********************");
System.out.println(" 1、play 0、exit ");
System.out.println("***********************");
System.out.println("请输⼊您的选择:");
Scanner scanner =new Scanner(System.in); int choice = Int();
return choice;
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论