2024.9.27

一。
1.java的基本运行单位是类
2.类由成员变量/Field域,方法,构造器,代码块和内部类组成
3.变量的类型相互之间可以转换
4.String是引用类型,不是数据类型
5.在类中,用static声明的成员变量为静态成员变量,也成为类变量。
二。
动手动脑 一
第一个false是因为s和t是不相等的枚举实例
第二个false表示s不是一个基本数据类型,枚举是引用类型
true表示通过valueOf方法从字符串"SMALL"获取的枚举实例u与直接通过枚举常量获取的实例s是相等的
最后进行了枚举值的遍历
三。
动手实验
输出为
0.05 + 0.01 = 0.060000000000000005
1.0 - 0.42 = 0.5800000000000001
4.015 * 100 = 401.49999999999994
123.3 / 100 = 1.2329999999999999
不意外,使用double类型的数值进行计算,其结果是不准确的。
四。
为什么double类型的数值进行运算得不到“数学上精确”的结果?
1.浮点数表示是由符号位,指数部分和尾数部分组成的
2.精度损失
3.误差累积
五。
以下代码的输出结果是什么?
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
第一个是将X+Y=这个字符串和X,Y进行连接,将XY视为字符串。
第二个是X+Y同为整数进行了相加结果为300,之后+“=X+Y”,因为=X+Y是字符串所以将300也视为字符串.
六。
代码如下:
import java.util.Random;

public class TestDouble {
public static void main(String[] args) {
Random random = new Random();
for (int i = 1; i <= 30; i++) {
int num1 = random.nextInt(100) + 1; // 生成1到100之间的随机数
int num2 = random.nextInt(100) + 1;
int operation = random.nextInt(4); // 0:加法, 1:减法, 2:乘法, 3:除法

    // 除法需要特别处理,确保可以整除
    if (operation == 3) {
        int temp = num1;
        num1 = num1 * num2;
        num2 = temp;
    }

    // 输出题目
    System.out.print("题目" + i + ": ");
    switch (operation) {
        case 0:
            System.out.println(num1 + " + " + num2);
            break;
        case 1:
            System.out.println(num1 + " - " + num2);
            break;
        case 2:
            System.out.println(num1 + " * " + num2);
            break;
        case 3:
            System.out.println(num1 + " / " + num2);
            break;
    }
}

}
}
实现生成30道四则运算题目的程序估计写好需要10分钟。

posted @ 2024-09-28 00:25  宫崎英藻  阅读(8)  评论(0)    收藏  举报