1.编程实现猜数游戏案例
1.1. Java代码
import java.util.Random;
import java.util.Scanner;
public class Ex1 {
public static void main(String[] args){
Random rand = new Random();
int start = 100;
int end = 1000;
int num = rand.nextInt(end-start+1) + start;
Scanner scanner = new Scanner(System.in);
int i = 0;
while (true){
++i;
System.out.printf("请输入数字[%d - %d]:", start, end);
int t = scanner.nextInt();
if(t < start || t > end ){
System.out.printf("输入有误, 必须在%d - %d 范围内%n", start,end);
continue;
}
if (t > num){
System.err.printf("%d、太大了%n", i);
}else if (t < num) {
System.err.printf("%d、 太小了%n", i);
}else{
System.out.printf("恭喜, 你猜对了, 你的游戏分数: %d分。", (100 - --i * 10));
break;
}
if (i >=10){
System.out.println("游戏结束");
}
}
}
}
1.2.执行结果

2.编程实现猜数游戏,使用try catch处理异常。
2.1.Java代码
import java.util.Random;
import java.util.Scanner;
public class Ex2 {
public static void main(String[] args) {
Random rand = new Random();
Scanner sc = new Scanner(System.in);
int t = rand.nextInt(1, 101);
while (true) {
System.out.print("请输入[1-100] : ");
int n = 0;
try {
n = sc.nextInt();
if(n<1 || n>100){
System.out.println("必须输入1-100整数");
continue;
}
} catch (Exception e) {
if("quit".equalsIgnoreCase(sc.next())){
System.out.println("游戏结束");
break;
}else{
System.out.println("必须输入整数");
continue;
}
}
if (n > t) {
System.out.println("太大了");
} else if (n < t) {
System.out.println("太小了");
} else {
System.out.println("恭喜,你猜对了.");
break;
}
}
}
public static void one(String[] args) {
Random rand = new Random();
Scanner sc = new Scanner(System.in);
int t = rand.nextInt(1, 101);
while (true) {
System.out.print("请输入[1-100] : ");
int n = 0;
if (sc.hasNextInt()) {
n = sc.nextInt();
} else {
System.out.println("请输入整数");
sc.next();
continue;
}
if (n > t) {
System.out.println("太大了");
} else if (n < t) {
System.out.println("太小了");
} else {
System.out.println("恭喜,你猜对了.");
break;
}
}
}
}
2.2. 执行结果
