System.out.println("BYTE MAX_VALUE = " + Byte.MAX_VALUE); System.out.println("BYTE MIN_VALUE = " + Byte.MIN_VALUE); System.out.println("SHORT MAX_VALUE = " + Short.MAX_VALUE);//3萬多,5位 System.out.println("SHORT MIN_VALUR = " + Short.MIN_VALUE); System.out.println("Int MAX_VALUE = " + Integer.MAX_VALUE);//21億,10位 System.out.println("Int MIN_VALUE = " + Integer.MIN_VALUE); System.out.println("LONG MAX_VALUE = " + Long.MAX_VALUE);//9.。。,19位 System.out.println("LONG MIN_VALUR = " + Long.MIN_VALUE); System.out.println("FLOAT MAX_VALUE = " + Float.MAX_VALUE); System.out.println("FLOAT MIN_VALUE = " + Float.MIN_VALUE); System.out.println("DOUBLE MAX_VALUE = " + Double.MAX_VALUE); System.out.println("DOUBLE MIN_VALUR = " + Double.MIN_VALUE);
基本類型類型 |
boolean |
byte |
char |
short |
Int |
long |
float |
double |
void |
二進制位數 |
1 |
8 |
16 |
16 |
32 |
64 |
32 |
64 |
-- |
封裝器類 |
Boolean |
Byte |
Character |
Short |
Integer |
Long |
Float |
Double |
Void |
java中的float與double符合IEEE754標准,這里僅輸出其精度。
數值型數據之間的轉換:
實心箭頭無信息丟失,虛線有可能丟失信息,無法轉換的會提示:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Type mismatch: cannot convert from short to char
當量個數進行運算時,其中一個是double,則都轉化為double,
否則,若其中有一個是float,則。。。。float
否則,若其中有一個是long,則。。。。long,
否則, int,則。。。。。int
待解決的問題,
1,為什么max的指數要比min的指數的絕對值小?
2,boolean的范圍,用什么類型存儲,計算時會發生類型轉換?
3,有哪些數據類型在虛擬機內計算時需要轉換類型?