课后作业1
1:运行EnumTest.iava,分析结果
答:s 和 t 的比较:s 和 t 引用不同的枚举常量,因此输出为 false。原始数据类型检查:枚举不是原始数据类型,所以输出为 false。字符串转换:从字符串转换为枚举常量的操作成功,s 和 u 参考相同的常量,输出为 true。列出所有值:成功列出了所有枚举常量:SMALL、MEDIUM 和 LARGE。这段代码很好地展示了 Java 中枚举的基本用法,包括常量的比较、类型检查和枚举的列举。
2:以下代码的输出结果是什么?
int X=100;
int Y=200;
System.out.println("X+Y="+X+Y);System.out.println(X+Y+"=X+Y");为什么会有这样的输出结果?
答:第一行输出:"X+Y=100200",第二行输出:"300=X+Y"。由于拼接操作的优先级高于加法,所以是字符串拼接,而不是数值计算。
3:用java编写随机生成30道小学数学加减法的题目的程序
答:import java.util.Random;
public class MathQuizGenerator {
public static void main(String[] args) {
Random random = new Random();
int numberOfQuestions = 30; // 题目数量
System.out.println("小学数学题(20以内的加减法):\n");
for (int i = 1; i <= numberOfQuestions; i++) {
// 随机生成两个 0 到 20 之间的数字
int num1 = random.nextInt(21); // 0 到 20
int num2 = random.nextInt(21); // 0 到 20
// 随机决定是加法还是减法
if (random.nextBoolean()) {
// 加法
System.out.println("第 " + i + " 题: " + num1 + " + " + num2 + " = ?");
} else {
// 减法
// 确保结果不为负数
if (num1 < num2) {
int temp = num1;
num1 = num2;
num2 = temp;
}
System.out.println("第 " + i + " 题: " + num1 + " - " + num2 + " = ?");
}
}
}
}