官术网_书友最值得收藏!

1.3.3 數據類型的定義

Java語言規范中還定義了Java的數據類型。根據Java 1.7的規范,Java的數據類型分為原始數據類型和引用數據類型。原始數據類型又分為數字型和布爾型。數字型又有byte、short、int、long、char、float、double。注意,在這里char被定義為整數型,并且在規范中明確定義:byte、short、int、long分別是8位、16位、32位、64位有符號整數,而char為16位無符號整數,表示UTF-16的字符。布爾型只有兩種取值:true和false。而對于float和double,規范中規定,它們是滿足IEEE 754的32位浮點數和64位浮點數。

注意:在Java語言中,char占2字節,而不是C語言中的1字節。從這點上看,Java的國際化在語言底層就提供了強有力的支持。

此外,規范還定義了各類數字的取值范圍、初始值,以及能夠支持的各種操作。以整數為例,比較運算、數值運算、位運算、自增自減運算等都在規范中有描述。

除了基本數據類型,引用數據類型也是Java重要的組成部分,引用數據類型分為3種:類或接口、泛型類型和數組類型。

提醒:引用類型和原始類型在Java的處理中是截然不同的,尤其對于它們的“相等”操作。

【示例1-1】在Java語言規范中,有一個簡短的示例,說明了引用類型和原始類型的區別:

上述程序將輸出:

從上述輸出可以看出,對于原始數據類型int,i1和i2表示不同的變量,兩者毫無關系,但是對于v1和v2,它們都指向唯一一個由new關鍵字創建的Value對象。

由于本書并非講解Java語言,因此對于這部分內容點到即止,有興趣的讀者可以參考Java語言規范的第4章“Types,Values,and Variables”。

主站蜘蛛池模板: 宝应县| 景德镇市| 长乐市| 玉环县| 秦皇岛市| 高州市| 巴彦淖尔市| 扎囊县| 沙河市| 招远市| 永德县| 苍山县| 莱阳市| 威远县| 沙雅县| 隆林| 泰安市| 合川市| 桑日县| 怀化市| 阳东县| 宁远县| 沐川县| 清丰县| 昌乐县| 兴和县| 荃湾区| 黑河市| 吴江市| 隆尧县| 遂溪县| 牙克石市| 漾濞| 毕节市| 台州市| 平江县| 舒兰市| 阿瓦提县| 犍为县| 陵川县| 北碚区|