《Thinking in Java》學習筆記(一)

來源:互聯網
上載者:User

標籤:

  伺服器端的編程可以參考另一本書《企業Java編程》(Thinking in Enterprise Java)。

 1.基本類型

 

基本型別 大小 最小值 最大值  預設值
boolean ----- ----- ------  false
char 16-bit Unicode 0 Unicode 2^16-1   \u0000(null)
byte 8-bit -128 +127  0
short 16-bit -2^15 +2^15-1  0
int 32-bit -2^31 +2^31-1  0
long 64-bit -2^63 +2^63-1  0L
float 32-bit IEEE754 IEEE754  0.0f
double 64-bit IEEE754 IEEE754  0.0d

 

 

 

 

 

 

 

  數實值型別的都有正負之分。

  boolean類型所佔的空間沒有明確的制定。

 

   1.java的數值是有符號的,不要忘了還要考慮負數

        判斷一個數是不是奇數,

        if( i % 2 == 1){

            ...

        }

        如果i是負數,i%2 的結果將是-1.應該是寫成:

       if( i%2 ! =0){

     ...

       }

     2.如果使用小數,預設的將是double類型,要使用float類型,應該顯示的指明小數的類型

        float f = 1.24f;

 

     3.小數都可能會有精度的丟失,使用float和double做小數計算時可能都會碰到這樣的問題,如果就是需要精確地計算,可以考慮使用BigDicemal,整型對應的是BigInteger。這裡要用的是new BigDicemal(String)而不能用new BigDicemal(double),否則在構造BigDicemal之前就已經丟失了精度,這是需要注意的。

        System.out.println(2.0f - 1.1f);

        System.out.println(2.0d - 1.1d);

  2.封裝類型

   封裝類型包括:Integer 、Long、Short、Byte、Character、Double、Float、Boolean、BigInteger、BigDecmail

   其中BigInteger、BigDecimal沒有相對應的基本類型,主要應用於高精度的運算,BigInteger 支援任意精度的整數,BigDecimal支援任意精度帶小數點的運算。

   使用BigInteger、BigDecimal不會產生精度丟失的問題,而是用long,float時都需要考慮精度丟失的問題。可能不是很大的數值的計算都會有精度丟失的問題。

 

   為什麼有了基本類型還需要封裝類型?很多時候方法的參數是一個對象而非基本類型,例如ArrayList的add方法的參數就是對象。

 

   3.緩衝

         緩衝是一種典型的空間交換時間的方案,資料庫頻繁讀取時需要考慮緩衝,最基本的思路就是Map。

    使用緩衝需要考慮的問題:

    1.資料需要緩衝多久

    2.快取資料很真實資料的一致性,當真實資料更新或刪除時

    3.緩衝的並發控制,增刪改查在多線程的環境下需要考慮

 

    java.lang包預設會匯入到每個Java檔案中,所以lang包下的類預設都可以直接使用。

    rt.jar包也會自動載入,jre/lib下的jar包也會自動載入。

 

   

《Thinking in Java》學習筆記(一)

相關文章

聯繫我們

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