標籤:平台 技術分享 尾碼 signed exce ror 浮點數 精度 boolean
Java資料類型
java中的資料類型可以分為兩類,參考型別(reference types)以及基本類型(primitive types),參考Java官方文檔的最新定義繪製類型關係圖如下
對每種類型中我認為重要的點進行總結
基本類型(primitive types)
- 整型:用於表示沒有小鼠部分的數值,允許是負數,通常情況下int類型最常用,byte和short類型主要用於底層的檔案處理
- Java中整型的範圍與Java代碼啟動並執行及其無關
- 長整形尾碼L或者l;十六進位數值有一個首碼0x或者0X;八進位有一個首碼;從Java7開始加上首碼0b或者0B就可以寫位元
- Java中無任何無符號unsigned形式的int,long,short,byte類型,Java的做法增加了平台的可以執行但是犧牲了效能
- char類型原本用於表示單個字元,現在的Unicode字元可能是一個char值也可能是兩個
- 浮點型:浮點型有兩種double和float,double(64位)表示的數值精度是float(32位)的兩倍,絕大多數應用程式使用float
- float:儲存需求4位元組,取值範圍:±3.40282347E+38F,有效位元為6-7位
- double:儲存需求8位元組,取值範圍大約±1.79769313486231570E+308有效位元是15位
- 當對Null 參考進行拆箱的操作時會拋出 NullPointerException異常
- 當使用0作為分母進行除法運算的時候會拋出 ArithmeticException異常
- 當使用++,--操作符的時候可能會拋出OutOfMemoryError 異常
- 當二元運算子至少有一個對象是浮點數的時候,執行浮點操作
- 如果二元運算子中至少有一個對象是double,則進行64位的運算,當另一個對象不是double則先進行數值提升
- 浮點類型的任何值都可以轉換為任何數字類型,但與boolean之間沒有強制類型轉換
- 當對Null 參考進行拆箱的操作時會拋出 NullPointerException異常
- 當使用++,--操作符的時候可能會拋出OutOfMemoryError 異常
Java資料類型