Jafe Lee

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            49 隨筆 :: 0 文章 :: 24 評論 :: 0 Trackbacks
          Puzzle 1:

          當求余運算(remainder operation)符 % 返回一個非零余數時,余數的符號位和左邊操作數的符號位相同。例如
          ????????System.out.println((-53)%9);?//?-8
          ????????System.out.println(53%(-9));?//8
          ????????System.out.println((-53)%(-9));?//-8

          Puzzle 2:

          Change.java

          關于浮點數的二進制表示~~
          (1)二進制浮點數并不能精確表示所有的小數
          (2)對計算精度要求比較準確(例如金融計算)時,不要使用float和double,盡量使用int, long,BigDecimal.
          (3)推薦閱讀文章:What Every Computer Scientist Should Know About Floating-Point Arithmetic
          網上很多地方都有的。另一本牛書 Computer Systems A Programmers's Perspective上也有講浮點數
          (4)JLS 3.10.1由規范可知 0.1, .1, 1. 都是合法的浮點數。需要注意的是在java中,浮點數有兩種原生類型float,double,當浮點數的后綴是F或者f時,該浮點數為float類型,沒有后綴或者后綴是D或者d時,該浮點數是double類型的。注意下面的例子
          FloatPoint.java

          結果:
          結果

          Puzzle 3:
          需要注意java是如何處理整數溢出的,看下面的例子就一目了然了,別忘了long是 8 bytes,int是 4 bytes的~~
          LongDividion.java

          Puzzle 4:
          添加long型整數的后綴時要使用L避免用l,同樣不要單獨使用小寫字母l作為變量名,理由是顯而易見的:l和1在大多數字體中太難區分。
          Puzzle 5:
          (1)和十進制數不同,當十六進制、八進制數的最高位是1時,表示它是一個負數(在十進制數中,表示一個負數要顯式使用符號-)
          (2)盡量避免混合類型運算,例如本例中的 long型和int型的加法,在java中,一個整數如果沒有后綴L或l,則它是一個int型而不是long型。
          JoyOfHex.java
          Puzzle 6:
          The rule "Sign extension is performed if the type of the original value is signed; zero extension if it is a char, regardless of the type to which it is being converted" describes the sign extension behavior when converting from narrower integral types to wider.

          Multicast.java
          Puzzle 6:
          JLS 15.7 Evaluation Order
          CleverSwap.java

          posted on 2007-08-11 13:46 Jafe Lee 閱讀(320) 評論(0)  編輯  收藏 所屬分類: Book Notes-- Java Puzzlers

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 荆州市| 乌兰察布市| 交城县| 绥化市| 沙洋县| 无极县| 闸北区| 平和县| 盘山县| 黄浦区| 黔西| 澄迈县| 筠连县| 贵阳市| 夏津县| 湾仔区| 阳春市| 密山市| 柳州市| 山东省| 三都| 安福县| 名山县| 荆门市| 洛隆县| 永定县| 通海县| 娱乐| 万全县| 顺昌县| 桓台县| 阳信县| 武汉市| 宣恩县| 彭泽县| 芜湖市| 阿拉善右旗| 尚志市| 阳高县| 望谟县| 淳安县|