1. 程式人生 > >Java表示式的資料型別自動提升問題

Java表示式的資料型別自動提升問題

/**
 * 表示式的資料型別自動提升問題
 * 
 * 1.所有的byte,short,char型的值將被提升為int型;
 * 2.如果有一個運算元是long型,計算結果是long型;
 * 3.如果有一個運算元是float型,計算結果是float型;
 * 4.如果有一個運算元是double型,計算結果是double型;
 * 
 * @author ZHOUMI2
 *
 */
public class Test {

    public static void main(String[] args) {
        byte b1 = 1, b2 = 2, b3, b6;
        final
byte b4 = 4, b5 = 6; b3=(byte)(b1+b2); // 這裡不加型別轉換的話就會報編譯錯誤,因為b1+b2在運算的過程中會自動把型別提升為int b6 = b4 + b5; // 這裡不用轉型,因為JVM對final變數有優化處理,直接將b4+b5的結果10當成常量賦值給b6 System.out.println(b3 + "," + b6); } } // 執行結果 3,10