Java 資料類型轉換

來源:互聯網
上載者:User

標籤:[]   strong   bool   浮點數   變數   long   不同的   類型   不同類   

自動類型轉換

整型、實型(常量)、字元型資料可以混合運算。運算中,不同類型的資料先轉化為同一類型,然後進行運算。

轉換從低級到進階。

低  ------------------------------------>  高

 

byte,short,char—> int —> long—> float —> double

 

 

 

資料類型轉換必須滿足如下規則:

1. 不能對boolean類型進行類型轉換。

2. 不能把物件類型轉換成不相關類的對象。

3. 在把容量大的類型轉換為容量小的類型時必須使用強制類型轉換。

4. 轉換過程中可能導致溢出或損失精度,例如:

int i =128;   

byte b = (byte)i;

因為byte類型時8位,最大值為127,所以當強制轉換為int類型值128時候就會導致溢出。

5. 浮點數到整數的轉換是通過捨棄小數得到,而不是四捨五入,例如:

(int)23.7 == 23;

(int)-45.89f == -45

 

自動類型轉換

必須滿足轉換前的資料類型的位元要低於轉換後的資料類型,例如: short資料類型的位元為16位,就可以自動轉換位元為32的int類型,同樣float資料類型的位元為32,可以自動轉換為64位的double類型。

執行個體

public class ZiDongLeiZhuan{

        public static void main(String[] args){

            char c1=‘a‘;//定義一個char類型

            int i1 = c1;//char自動類型轉換為int

            System.out.println("char自動類型轉換為int後的值等於"+i1);

            char c2 = ‘A‘;//定義一個char類型

            int i2 = c2+1;//char 類型和 int 類型計算

            System.out.println("char類型和int計算後的值等於"+i2);

        }

}

運行結果為:

char自動類型轉換為int後的值等於97

char類型和int計算後的值等於66

 

 

強制類型轉換

1. 條件是轉換的資料類型必須是相容的。

2. 格式:(type)value type是要強制類型轉換後的資料類型 執行個體:

執行個體

public class QiangZhiZhuanHuan{

    public static void main(String[] args){

        int i1 = 123;

        byte b = (byte)i1;//強制類型轉換為byte

        System.out.println("int強制類型轉換為byte後的值等於"+b);

    }

}

運行結果:

int強制類型轉換為byte後的值等於123

隱含強制類型轉換

1. 整數的預設類型是 int。

2. 浮點型不存在這種情況,因為在定義 float 類型時必須在數字後面跟上 F 或者 f。

這一節講解了 Java 的基礎資料型別 (Elementary Data Type)。下一節將探討不同的變數類型以及它們的用法。

Java 資料類型轉換

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.