java 基礎資料型別 (Elementary Data Type)

來源:互聯網
上載者:User
 基本型別  大小  最小值  最大值
 boolean  -----  -----  ------
 char  16-bit  Unicode 0  Unicode 2^16-1
 byte  8-bit  -128  +127
 short  16-bit  -2^15  +2^15-1
 int  32-bit  -2^31 +2^31-1
 long  64-bit  -2^63 +2^63-1
 float  32-bit IEEE754 IEEE754
 double  64-bit IEEE754 IEEE754
 void      

注意!:表格裡的^代表的是次方哈~

使用 Float 類 節省開發時間 
作者: Builder.com
2004-11-16 11:50 AM
 

即使你可能知道 IEEE 浮點數,你可能也從來沒有逐個位元地處理過這類資料。下面我將向你展示如何逐個位元地處理 IEEE 浮點數,下次在你的 Java 項目需要從位元序列建立浮點數時,或者從浮點數建立位元序列時,你就知道Float 類可以為完成這一工作。

IEEE 浮點數介紹

IEEE 754 浮點單精確度數字格式定義了一個用於儲存浮點數的位元布局。在空位元布局中,一個位元留作符號位,八個位元留作指數,23個位元留作尾數。這些位元是按最重要位元到最不重要位元進行排列的,如下例所示:

 
 
31                             0
|                              |                     
SEEEEEEEEMMMMMMMMMMMMMMMMMMMMMMM

其中:

S = 符號位
E = 指數
M = 尾數

你可以從 IEEE 的網站購買一份 IEEE 浮點數的完整解釋。(如果線上搜尋 IEEE 754,你應該可以找到免費的版本。)

Float 對 Java 社區的貢獻

下面的樣本程式使用 Float 的兩個方法將一個浮點數轉成位元,然後又將這些位元轉成一個浮點數。

使用Float.floatToIntBits(float f) 方法可以將一個浮點數轉成一個位元序列。這個方法返回一個32位整數,表示你作為參數提供的浮點數的 IEEE 754 位元排列。

使用Float.intBitsToFloat(int bits) 方法可以進行反方向轉換。這個方法接受傳入的整數作為參數,將這些位元轉成一個 IEEE 浮點數。

下面是樣本程式:

public class BitsTip {
    public static void main(String args[]) {
        float f = Float.parseFloat(args[0]);
        int bits = Float.floatToIntBits(f);

        System.out.println("bits: " + bits);
        System.out.println("back to float: " + Float.intBitsToFloat(bits));
    }
}

如果你曾經必須要手工進行這種轉換,那麼你就會很欣賞這兩個簡單的方法為你節省的工作。如果你正在處理64位元,那麼可以選擇使用Double 封裝器(wrapper)類。這個類提供同樣的方法處理IEEE 754 雙精確度浮點數。

最好選擇閱讀一下javadoc,查閱裡面有關浮點數與位元序列之間的轉換的部分,以便完整地瞭解這些方法都能為你些做什麼。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.