Java數值類型轉換

一、自動類型轉換

        在程序運行時,常常需要將一種數值類型轉換爲另一種數值類型。引用Java核心卷I中的一張圖,給出了數值類型之間的合法轉換。

數值類型之間的合法轉換

        圖中有6個實心箭頭,表示無信息丟失的轉換;有3個虛箭頭,表示可能有精度損失的轉換。 

        小精度轉大精度可以自動轉換,int值類型的值會自動地轉成double類型。例如:

        int a=1;
        double b=a;
        System.out.println(b);

       控制檯輸出爲0.1。

二、強制類型轉換

        有些時候也需要將double轉換成int,在Java中,允許這種數值之間的類型轉換。這種情況,需要通過強制類型轉換實現這個操作。強制類型轉換的語法是在圓括號中給出想要轉換的目標類型,後面緊跟待轉換的變量名。當然,有可能會丟失一些信息,例如:

        double a=1.99;

        int b=(int) a;

        這樣,b的值爲1。強制類型轉換通過截斷小數部分將浮點值轉換爲整型。如果想對浮點數進行舍入運算,可以通過Math.round方法:

        double a=1.99;
        int b=(int) Math.round(a);

        現在,b的值爲2。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章