一、动手动脑1

s==t输出false说明st分别引用了两个不同的枚举实例。s.getClass().isPrimitive():输出false说明枚举类型不是原始数据类型。s==u:输出true。这是因为u是通过Size.valueOf("SMALL")方法得到的,该方法返回与给定字符串名称匹配的枚举实例。for(Size value:Size.values()):输出了枚举的所有实例。

1、枚举实例是唯一的,每个枚举值都是该枚举类的一个实例。2枚举类型不是原始数据类型,而是引用类型。3可以使用valueOf()方法从字符串中获取对应的枚举实例。4可以使用values()方法获取枚举类型的所有实例。

二、动手动脑2

原码:最简单的形式,最高位为符号位,剩余位表示数值。

反码:对于负数,将原码的符号位不变,其他位取反(即0变1,1变0)。

补码:对于负数,补码就是反码加1。

Java中的数采用补码表示

public class BitwiseOperations {
public static void main(String[] args) {
int x = 5;
int y = -5;

// 原码
System.out.println("原码:");
System.out.println("x: " + Integer.toBinaryString(x));
System.out.println("y: " + Integer.toBinaryString(y));

// 反码
System.out.println("\n反码:");
System.out.println("x: " + Integer.toBinaryString(x));
System.out.println("y: " + Integer.toBinaryString(y).substring(1).replaceAll("0", "1").replaceAll("1", "0"));

// 补码
System.out.println("\n补码:");
System.out.println("x: " + Integer.toBinaryString(x));
if (y < 0) {
String binary = Integer.toBinaryString(Math.abs(y));
System.out.println("y: " + binary.substring(1).replaceAll("0", "1").replaceAll("1", "0") + "1");
} else {
System.out.println("y: " + Integer.toBinaryString(y));
}
}
}

三、动手实验1

TestDouble.java输出结果为

1.23456794E9
X+Y=100200
300=X+Y

"X+Y="+X+Y前面为字符串类型,后面的x和y进行简单的合并而不是相加
X+Y+"=X+Y"前面的x+y为加法

四、动手动脑3

输出结果为

X+Y=100200
300=X+Y

在第一个输出语句中,由于字符串连接符的优先级高于变量名,所以先执行了字符串连接,然后再将XY的值加到结果上,因此输出了X+Y=100200

在第二个输出语句中,将X+Y的结果与字符串连接,然后再输出,因此输出了300=X+Y

五、动手动脑4

public class VariableShadowingExample {
int x = 10; // 实例变量 x

public void methodA() {
int x = 20; // 局部变量 x
System.out.println("Value of x in methodA: " + x); // 输出:20
}

public void methodB() {
System.out.println("Value of x in methodB: " + x); // 输出:10
}

public static void main(String[] args) {
VariableShadowingExample example = new VariableShadowingExample();
example.methodA();
example.methodB();
}
}

六、动手动脑5

byte占8位,short占16位,int占32位,long占64位,float占32位,double占64位。

byte表示-128到127,short表示-32768到32767,int表示-2147483648到2147483647,long表示-9223372036854775808到9223372036854775807,float表示约-3.4e38到3.4e38,double表示约-1.7e308到1.7e308。

posted on     阅读(404)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端



点击右上角即可分享
微信分享提示