Java核心技术卷第三章
Java核心技术卷第三章39
内容
简单的规则
在 Java 中,每个句子必须用分号结束。特别需要说明,回车不是语句的结束标志,因此,如果需要可以将一条语句写在多行上。
注释
注释是非常必要的,能够帮助程序员理解代码,当需要长篇的注释时, 既可以在每行的注释前面标记 /,/ 也可以使用 /* 和 */ 将一段比较长的注释括起来。
数据类型
Java 中, 所有的数值类型所占据的字节数量与平台无关。注意, Java 没有任何无符号(unsigned) 形式的 int、 long、short 或 byte 类型
细节/易错
注释
在 Java 中,/* / 注释不能嵌套 „ 也就是说, 不能简单地把代码用 / 和 */ 括起来,作为注释, 因为这段代码本身可能也包含一个 */
数据类型
1.浮点类型
浮点数值不适用于无法接受舍入误差的金融计算中。 例如,命令 System.out.println( 2.0-1.1 ) 将打印出 0.8999999999999999, 而不是人们想象的 0.9。这种舍入误差的主要原因是浮点数值采用二进制系统表示, 而在二进制系统中无法精确地表示分数 1/10。这就好像十进制无法精确地表示分数 1/3—样。如果在数值计算中不允许有任何舍入误差,就应该使用 BigDecimal类
补充知识
数据类型
浮点类型
可以使用十六进制表示浮点数值。例如,0.125 = 2^-3可以表示成 0x1.0p^3。在十六进制表示法中, 使用 p 表示指数, 而不是 e。 注意, 尾数采用十六进制,指数采用十进制。指数的基数是 2,而不是 10;
所有的浮点数值计算都遵循 IEEE 754 规范。具体来说,下面是用于表示出和出错情况的三个特殊的浮点数值:
•正无穷大
•负无穷大
•NaN (不是一个数字)
例如, 一 正整数除以 0 的结果为正无穷大。计算 0/0 或者负数的平方根结果为 NaN
常量 Double_POSITIVE_INFINITY、 Double.NEGATIVEJNFINITY 和 Double.NaN( 以及相应的 Float 类型的常量) 分别表示这三个特殊的值, 但在实际应用中很少遇到。特别要说明的是, 不能这样检测一个特定值是否等于 Double.NaN:
if (x = Double.NaN)
// is never true
所有“ 非数值” 的值都认为是不相同的。然而,可以使用 Double.isNaN 方法:
if (Double.isNaN(x)) // check whether x is "not a numbe
char
Unicode 转义序列会在解析代码之前得到处理。 例如,"\u0022+\u0022”
并不是一个由引号(U+0022) 包围加号构成的字符串。 实际上, \u0022 会在解析之前转换为 ", 这会 得 到 也 就 是 一 个 空 串。