省朝夕

           

          Java基礎備注

          1、java中,Integer和Integer類型比較時,是對象間的相等比較,不要直接用==,最好是其中一個調用一下intValue()方法,這樣,就變成了int與Integer比較,java 5的機制會保證二者的拆箱操作的。
          2、對于一個字符串,調用split(":")這樣的形式,當作為分隔符的最后一個字段是空的時候,會直接忽略最后一個字段。此時可以考慮用:split(":",-1)。
          3、定義double值時,注意對其進行加減操作的精度問題。比如:double a = 19.9,在實際存儲時,值為:19.89999999999999999999999999 (http://www.binaryconvert.com/result_double.html?decimal=056046057)。
          4、StringBuffer 與 StringBuilder 中的方法和功能完全是等價的,只是StringBuffer 中的方法大都采用了 synchronized 關鍵字進行修飾,因此是線程安全的,而 StringBuilder 沒有這個修飾,可以被認為是線程不安全的。StringBuffer 始于 JDK 1.0,StringBuilder 始于 JDK 1.5。從 JDK 1.5 開始,帶有字符串變量的連接操作(+),JVM 內部采用的是StringBuilder 來實現的,而之前這個操作是采用 StringBuffer 實現的。通常情況下,使用StringBuilder即可。這里有一個性能考量的點:StringBuilder的構造函數中,推薦new StringBuilder(capability),采用這種方式需要預估StringBuilder大概需要容納的字符個數,估計量稍微偏大一點也比不估計的好。不然的話會出現原定容量不夠,字符串的頻繁拷貝的情形。此外,當我們需要截掉StringBuilder所代表的字符串最后一位時,可以直接采用setLength的方式。
          5、當我們對Arrays.asList返回的List進行添加或刪除時將會報 java.lang.UnsupportedOperationException 異常。set(index,value)是可以的。

          posted on 2013-01-07 21:15 hejianchao 閱讀(462) 評論(0)  編輯  收藏 所屬分類: java基礎


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


          網站導航:
           

          導航

          統計

          留言簿

          文章分類

          文章檔案

          搜索

          最新評論

          主站蜘蛛池模板: 拉萨市| 武宣县| 来宾市| 将乐县| 额尔古纳市| 樟树市| 河北区| 宝坻区| 崇仁县| 龙州县| 织金县| 白河县| 榆树市| 临江市| 柳河县| 兴安盟| 阳曲县| 安宁市| 偃师市| 阿坝县| 永州市| 盐边县| 桂林市| 通江县| 淄博市| 翼城县| 芒康县| 遵义市| 于都县| 扎囊县| 新余市| 南华县| 胶州市| 兴义市| 新源县| 舒兰市| 九江市| 即墨市| 周宁县| 武鸣县| 名山县|