作业二

1.运行EnumTest.java,得出的结果是:

得到的结论:
(1)枚举类型是引用类型
(2)枚举类型不是原始数据类型,它的每个具体值都引用一个特定的对象。
相同的值则引用同一个对象
(3)可以使用“”和equals()方法直接比对枚举变量的值,换句话说,对于
枚举类型的变量,“
”和equals()方法执行的结果是等价的
(4)可以使用values方法获取枚举类型的所有枚举常量,并进行遍历输出。
基本用法:
(1)定义枚举类型:使用enum关键字定义枚举类型,大括号内是枚举常量。
(2)使用枚举常量:可以像使用普通对象一样使用枚举常量,例如Size s = Size.SMALL。
(3)比较枚举常量:可以使用==操作符比较两个枚举常量是否引用同一个对
象。
2.运行TestDouble.java,得到的输出结果是:

结论:使用double类型的数值进行计算,其结果是不精确的。
原因:计算机内部以二进制形式存储和处理数据。而大多数十进制小数无
法精确地用二进制表示。double类型由整数位、指数位和小数位组
成,这种格式在表示某些数值时存在精度限制。由于存储空间有
限,它不能精确地表示所有可能的数值,特别是一些非常大或非常
小的数,以及某些特定的小数。
3.运行以下代码
int X=100;
int Y=200;
System.out.println("X+Y="+X+Y);
System.out.println(X+Y+"=X+Y");
得到的输出结果为:

结果原因:(1)根据运算符优先级,+从左到右结合。首先处理"X+Y=" +
X,这里X是int类型,它会被自动转换为字符串(因为字符
串连接优先于加法),结果是"X+Y=100"。然后再将这个结
果与Y进行连接,Y也会被转换为字符串,最终结果
是"X+Y=100200"。
(2)首先计算X + Y,得到300(这是正常的加法运算)。然后再
将300与"=X+Y"进行字符串连接,最终结果是"300=X+Y"
4.如下代码:

输出结果为:
同名变量的屏蔽原则:每个变量都有一个有效区域,即定义的那片区域,出了这个区域,变量将不再有效。(全局变量除外)变量定义在它所在那一片范围内有效。
package Test;
public class Test {
@SuppressWarnings("unused")
private static int test=7;
public static void main(String[] args) {
int test=9;
System.out.println(test);
}
}
结果为:9

posted @ 2024-09-28 10:58  李蕊lr  阅读(24)  评论(0)    收藏  举报