首页 > 代码库 > 国庆作业
国庆作业
一。EnumTest.java,运行之后结果为:
结论:①枚举类型是引用类型。①枚举不属于原始数据类型,它的每个具体值都引用一个特定的对象。相同的值引用同一个对象。③可以使用“==”和equals()方法直接比对枚举变量的值,对于枚举类型的变量,“==”和equals()方法执行的结果是等价的。
基本用法:① 枚举类型等效于定义static finally 常量②枚举类型可以有自己的属性(参数)和方法③ 枚举类型可以以独立的文件存在。
二。阅读响应教材,或者使用互联网搜索引擎,弄清楚反码、补码跟原码这几个概念,然后编写示例程序,对正数、负数进行各种位操作,观察输出结果,与手工计算的结果进行对比,看看java中的数时采用上述哪种码表示的。
①反码:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外
②补码:正数的补码与其原码相同;负数的补码是在其反码的末位加1
③原码:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外
④java采用的是补码表示。
三。java变量遵循“同名变量屏蔽原则”,请课后阅读相关资料弄清楚相关知识,然后自己编写一些测试diamante,就像本事例一样,有意识地在不同地方定义一些同名变量,看看输出的到底是哪个值。
java当中,如果局部变量与成员变量同名,则成员变量会被屏蔽,需要使用this操作符。
四。
看着这个图,再查查java中每个数据类型所占的位数,和表示数值的 范围,你能得出什么结论?
结论:自动类型转换是安全的,强制类型转换时,低精度向高精度转化无精度损失,从高精度传向低精度则有精度损失。
五。运行TestDouble.java看到输出结果,意外吗?
结果令人感到意外。原因:Java中的简单浮点数类型float和double不能够进行运算,使用其类型进行计算,结果是不精确的。
六。为什么double类型的数值进行运算得不到“数学上精确”的结果?
double类型的数值占用64bit,即64个二进制,除去最高位表示正负符号的位,在最低位撒花姑娘一定会与实际数据存在误差(除非实际数据恰好是2的n次方)。
七。
结果:
原因:第一个语句,使用运算符+连接字面量,是将X和Y将两数据连接起来。第二个语句运算符+是对X和Y求和。
八。编写一个程序,用户输入两个数,求出其加减乘除,并用消息框显示计算结果。
结果截图:
国庆作业