java课后作业

一、枚举类型

程序:

运行结果:

结论:

枚举类型是引用类型,并不是原始类型,他的每一个具体值都引用一个特定的对象。相同的值则引用同一个对象。可以用“==”和“equals()”的方法直接比较枚举变量的值,对于枚举类型来说,“==”与“equals()”两种方法是一样的。

二、码

原码:最高位为符号位,“0”代表正,“1”代表负,其余位表示数值的大小。

反码:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。
例如
{原码10010= 反码11101 (10010,1为符号码,故为负)
(11101) 二进制= -2 十进制}

补码:正整数的补码与原码相同,负整数的补码是在反码的末位加 1.

JAVA采用的是“ 补码 ”。

三、变量的作用域

同名变量的屏蔽原则:两个或多个同名变量,定义了不同的数值时,在使用时,在使用的区间内,变量的值为距他最近(前面)的定义。

结果为:

四、数据类型

char 8位二进制数范围是-2的7次方到2的7次方-1

byte 8位带符号整数-128到127之间的任意整数

short 16位无符号整数-32768到32767之间的任意整数

int 32位带符号整数-2的31次方到2的31次方-1之间的任意整数

long 64位带符号整数-2的63次方到2的63次方-1之间的任意整数

float 32位单精度浮点数,double 64位双精度浮点数。

结论:Java会从低级类型向高级类型转换,即取值范围相对较小的数据类型 转换成 取值范围相对较大的数据类型。

程序:

结果:

结论:

使用double类型的数值进行计算, 其结果是不精确的。

分析:计算机只能识别二进制,一切的数据最后都要转换为二进制。例如源程序中的2.4是十进制的,要转换为二进制,但2.4 的二进制不是精确的2.4,只是接近2.4,实际为2.3 999 999 999 999 999,浮点数由两部分组成:指数和尾数,再进行浮点数的二进制与十进制的转换时,浮点数参与了计算,那么转换过程就变的不可预测,并且变得不可逆。

五、以下代码的输出结果是什么?

程序:

结果:

结论:

前一个的输出语句后两个加号均为字符连接符;后一个的输出语句中第一个加号为数学上加法的加号,而后一个加号为字符连接符。

原文地址:https://www.cnblogs.com/mengqimoli/p/4859038.html