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

3.2.5 數據類型轉換

在算術運算和擴展賦值運算中,每個運算符都使用了兩個操作數。講解的時候,都是使用相同數據類型的數值進行講解的。如果兩個操作數的數據類型不同,就需要對操作數進行類型轉換,之后才能運算。根據轉換方式的不同,數據類型轉換分為自動轉換和手動轉換兩種。下面依次講解這兩種方式。

1.自動轉換

自動轉換是Java語言直接支持的轉換方式。對于支持自動轉換的數據類型,Java語言會按照特定的規則直接進行轉換,然后進行運算。要實現自動轉換,必須滿足以下兩個條件:轉換前的數據類型與轉換后的數據類型兼容;轉換后的數據類型的取值范圍比轉換前的數據類型的取值范圍大。

不同數據類型的常見轉換如表3.6所示。

表3.6 數據類型轉換

續表

直觀的自動轉換方向圖如圖3.6所示。

圖3.6 自動轉換方向圖

注意:對于直接出現在程序中的整數字面量,Java會按照int類型進行處理;對于小數字面量,Java會按照double類型進行處理。

示例3-16】下面將實現自動轉換。代碼如下:

運行結果如下:

2.手動轉換

如果Java的自動轉換規則不滿足特定需要,就需要手動轉換,即指定數值轉換后的類型,如將一個高精度的類型轉換為一個低精度的類型。手動轉換又被稱為強制類型轉換,其轉換形式如圖3.7所示。

圖3.7 手動轉換形式

示例3-17】下面將實現手動轉換。代碼如下:

運行結果如下:

主站蜘蛛池模板: 木兰县| 平湖市| 临朐县| 南皮县| 荥经县| 杭州市| 济宁市| 苏州市| 大兴区| 旬邑县| 太湖县| 城市| 张掖市| 瓦房店市| 手游| 兴安盟| 呼和浩特市| 桦川县| 瑞昌市| 礼泉县| 收藏| 阿图什市| 长春市| 荥经县| 荃湾区| 鹤峰县| 花莲市| 石泉县| 辽阳市| 武定县| 贵州省| 平舆县| 合肥市| 上栗县| 金寨县| 顺平县| 绥芬河市| 滕州市| 金堂县| 大方县| 察隅县|