歡迎使用我的 在線工具

          小D

          讀歷史、看小說、寫程序都是我所愛。技術不好,頭腦不靈光,靠的是興趣。
          隨筆 - 35, 文章 - 25, 評論 - 13, 引用 - 0
          數據加載中……

          Java字符串處理機制

          ?* 簡單的總結下:intern()方法
          ?* 這個方法是扣留的意思。呵呵。
          ?* 把當前字符串扣留到池中,然后用同樣的字符串時就是從內存池中取,而不會產生新對象,提供效率了撒。
          ?* 都知道我們在JVM中內置了一個字符串池。
          ?* 所有的字面值字符串和字符串賦值常量表達式都用intern()方法進行操作。
          ?* 但是有一點不同,就是通過new生成的字符串對象,這個對象生成了兩個字符串對象,
          ?* 一個是字面字符串(這個可以從池中取,或者生成新字符串對象,并扣留到池中),然后在將這個字符串對象
          ?* 的值傳給new出來的字符串對象的構造器,生成一個新字符串對象(這個字符串是沒有扣留到池中的),記住new關鍵字總是生成了對象。
          ?* 而我們給這個new出的字符串調用intern()方法,就會把這個字符串對象扣留到池中,而且如果池中有相同的字面值的字符串,
          ?* 就會返回池中的字符串,如果我們將該字符串引用賦給原先字符串的引用變量,那么我們就會省去一個對象,原先的字符串對象就會被某一個時刻回收,
          ?* 如果池中沒有相同值的字符串就返回該對象自身。

          posted on 2009-11-04 20:57 vagasnail 閱讀(306) 評論(0)  編輯  收藏 所屬分類: Java

          主站蜘蛛池模板: 措美县| 福海县| 池州市| 景谷| 离岛区| 泗阳县| 额尔古纳市| 和林格尔县| 静安区| 河源市| 长白| 沅江市| 沈丘县| 乐都县| 灵寿县| 新闻| 平顺县| 北流市| 元阳县| 江达县| 昆明市| 会理县| 宝兴县| 永城市| 沁阳市| 常山县| 呼和浩特市| 陵水| 乌苏市| 堆龙德庆县| 邵东县| 辽宁省| 县级市| 美姑县| 枞阳县| 阳西县| 沙雅县| 永安市| 冕宁县| 克拉玛依市| 郑州市|