这个猜数字,需要使用到从外部传入参数的方法Scanner。下面,我们直接上代码看看效果:
import java.util.Scanner;
public class GuessNumber {
public static void main(String[] args) {
// 猜字小游戏
int number = (int)(Math.random() * 10 + 1); // 设置随机数
int guess;
System.out.println("欢迎来到猜数字小游戏!");
do{
System.out.println("请输入一个1到10的数字:");
Scanner sc = new Scanner(System.in);
guess = sc.nextInt();
if(guess > number){
System.out.println("猜大了!");
}else if(guess < number){
System.out.println("猜小了!");
}
}while(guess != number );
System.out.println("恭喜您猜对了!");
}
}
实现效果:
程序参数可以直接从键盘输入,非常方便。这主要是下面代码在起作用:
Scanner sc = new Scanner(System.in);
int guess = sc.nextInt();
同时,还有一个重要点:int number = (int)(Math.random() * 10 + 1);
。它可以随机生成一个[1,11)的左包右开区间的数字。此外,还应该注意的是:(Math.random() * 10 + 1)
是一个浮点型数据类型(float)的,如果要将它转化为整数型(int)必须在前面加(int)
实现强制转化。不然,就要报错的。