<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 17,  comments - 14,  trackbacks - 0

    String是在java編程中用的最多的數(shù)據(jù)類型,因此也有很多與其他數(shù)據(jù)類型不同的性質(zhì)。

    創(chuàng)建字符串可以用的命令有:

    String str="abc";//創(chuàng)建str字符串,內(nèi)容為abc。

    String str=new String("abc");//創(chuàng)建str字符串,內(nèi)容為abc。

    雖然兩種方法都可以創(chuàng)建,但是卻有很大的不同。

    分析一下這兩句命令:

    String str="abc";

    這句程序的內(nèi)存分配情況為:

    16

    首先在棧內(nèi)存中為str開辟空間,然后在堆內(nèi)存中開辟匿名字符串a(chǎn)bc的空間,再由str指向abc的空間。這種方法很簡單,也很方便,而且在堆內(nèi)存中也只開辟了一塊內(nèi)容為abc的空間,沒有多余的空間。

    如果寫語句:String str1="abc";創(chuàng)建一個(gè)str1字符串,內(nèi)容同樣為abc,那么內(nèi)存空間的開辟和指向情況為:

    17

    可以看到str和str1指向同一塊堆內(nèi)存,這是為什么呢?因?yàn)镾tring用的最多,很特殊,因?yàn)閷τ赟tring來講使用直接賦值的方式會在字符串池中保存內(nèi)容。如果之后在聲明字符串的時(shí)候發(fā)現(xiàn)內(nèi)容一樣,則不會重新開辟空間,而是從內(nèi)存池中取出數(shù)據(jù)繼續(xù)使用。

    String str=new String("abc");

    這句程序的內(nèi)存分配情況為:

    18

    19

    這句程序會在堆內(nèi)存中開辟一塊內(nèi)容為abc的匿名空間,然后再new一塊空間,賦值abc,并有str指向這里,這時(shí)候匿名空間由于沒有棧指向成為垃圾,然后被回收。

    可以發(fā)現(xiàn),程序開辟了兩個(gè)空間,與前一個(gè)相比慢多了。所以在開發(fā)中絕對不能使用關(guān)鍵字new實(shí)例化String類。而且,如果直接使用賦值的方式也可以減少堆內(nèi)存的開銷。

    posted on 2010-10-16 23:46 Mineralwasser 閱讀(2314) 評論(4)  編輯  收藏

    FeedBack:
    # re: String的兩種實(shí)例化方式的區(qū)別
    2011-04-25 17:01 | 曾國泰
    筆試碰到了這道題。。悲劇了。。哎。。  回復(fù)  更多評論
      
    # re: String的兩種實(shí)例化方式的區(qū)別
    2012-02-12 10:51 | Ma
    你對string分析得很具體,到位.  回復(fù)  更多評論
      
    # re: String的兩種實(shí)例化方式的區(qū)別
    2015-09-25 15:25 | jjx
    講的很好。  回復(fù)  更多評論
      
    # re: String的兩種實(shí)例化方式的區(qū)別
    2016-07-02 11:07 | 小學(xué)員
    String a=new String();
    a="hello";
    為何不報(bào)錯(cuò)?  回復(fù)  更多評論
      

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


    網(wǎng)站導(dǎo)航:
     
    <2015年9月>
    303112345
    6789101112
    13141516171819
    20212223242526
    27282930123
    45678910

    常用鏈接

    留言簿(1)

    文章檔案(21)

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 热久久这里是精品6免费观看| 亚洲AV无码专区在线观看成人 | 又黄又爽一线毛片免费观看| 99999久久久久久亚洲| 免费三级毛片电影片| 亚洲乱码一区av春药高潮| 青苹果乐园免费高清在线| 亚洲自偷自偷在线成人网站传媒| 成人无码区免费A片视频WWW| 亚洲偷自精品三十六区| 成人免费毛片内射美女APP| 亚洲精品动漫免费二区| 国产免费观看a大片的网站| 国产乱码免费卡1卡二卡3卡| 亚洲另类春色校园小说| 男女免费观看在线爽爽爽视频| 亚洲三级在线观看| 国产免费观看a大片的网站| 一本久久A久久免费精品不卡| 国产亚洲精品资在线| 免费A级毛片无码A∨中文字幕下载| 久久91亚洲精品中文字幕| 99久久久国产精品免费无卡顿| 中文字幕亚洲综合久久综合| 伊在人亚洲香蕉精品区麻豆| 黄 色一级 成 人网站免费| 久久久久久久亚洲Av无码| 最近2019中文免费字幕| 四虎精品免费永久免费视频| 免费精品国产自产拍在线观看图片 | 久久精品国产亚洲香蕉| 国产2021精品视频免费播放| 亚洲av无码专区在线观看下载 | 亚洲一区精彩视频| 免费国产不卡午夜福在线| 国产午夜成人免费看片无遮挡| 亚洲一级毛片免费在线观看| 免费人成年轻人电影| 91高清免费国产自产拍2021| 国产亚洲精品线观看动态图| 成人黄色免费网址|