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

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

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

    把困難踩在腳下

    迎難而上

     

    String 對象

    1.String對象賦值的方法:
    String對象賦值有兩種方法,第一種方法是直接對變量進行賦值,例如:String str="abc";這種方法非常簡單。第二種方法是使用new函數進行賦值,例如:String str=new String("abc");這種方法將產生兩個String對象,因為"abc"本身就是一個字符串,這個對象是一個匿名對象,進行new函數又產生一個新的String對象,它在內存中的存儲方式如下圖所示:

    這個程序在堆內存中開辟了兩塊空間,每塊空間的內容都是字符串"abc"。
    這種賦值方法非常浪費內存,如果對象很多的時候那么程序的可行性非常差,所以不提倡使用這種方法進行賦值。
    2.Sring對象的共享特性:
    如果在一個程序中聲明了兩個String變量,采用直接賦值的方法將同一個字符串付給這兩個變量,那么這兩個變量將同時指向這個變量,在

    堆內存中為這兩個變量只分配一塊內存空間,例如:String str1="abc";String str2="abc";它的內存存儲形式如下圖所示:


    這個程序在堆內存中只開辟了一塊內存空間,空間的內容是"abc"。
    3.String對象內容的不變性:
    如果聲明一個String變量并未這個變量賦值,那么就會在堆內存中為這個對象開辟一塊內存空間來存放對象的值,之后無論怎樣改變這個對

    象的值都不會改變,但是可以改變對象的指向。例如:
    String str="abc";
    str+="def";執行
    System.out.println(str);
    將輸出:
    abcdef
    這個程序在內存中的存儲過程如圖所示:


    執行第一條語句在堆內存中開辟了一塊內存空間,內容是字符串"abc",執行第二條語句:因為字符串"def"本身就是一個String對象,所以

    先在堆內存空間中開辟另一塊內存空間,空間內容是字符串"def",然后再開辟一塊內存空間是兩個字符串的和,也就是字符串"abcdef",

    其次將str與字符串"abc"的指向斷開,將str指向字符串"abcdef"。

     

    posted on 2010-10-16 21:28 馮魁 閱讀(285) 評論(0)  編輯  收藏


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


    網站導航:
     

    導航

    統計

    公告

    快樂每一天!

    Everything is an object!

    常用鏈接

    留言簿(2)

    隨筆檔案

    學習網站

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲国语在线视频手机在线| 国产精品福利在线观看免费不卡| 无码精品一区二区三区免费视频| 97在线观看永久免费视频| 亚洲AV无码精品色午夜在线观看| 青柠影视在线观看免费高清| 一二三四免费观看在线视频中文版 | 99久久精品国产免费| 色www永久免费视频| 亚洲日本成本人观看| 免费看美女让人桶尿口| 亚洲精品无码久久久久牙蜜区| 在线看片人成视频免费无遮挡| 久久夜色精品国产噜噜亚洲a| 中文字幕免费不卡二区| 久久91亚洲精品中文字幕| 久久青草免费91线频观看不卡| 911精品国产亚洲日本美国韩国| 2022久久国产精品免费热麻豆| 亚洲国产成人九九综合| 成人人免费夜夜视频观看| 美女黄色毛片免费看| 亚洲熟妇丰满多毛XXXX| 2022久久国产精品免费热麻豆| 久久亚洲精品国产亚洲老地址| 国产国产人免费人成免费视频| 一区二区三区免费电影| 亚洲国产一区二区三区青草影视| 久久九九兔免费精品6| 亚洲AV日韩AV一区二区三曲| 永久免费毛片在线播放| 相泽南亚洲一区二区在线播放| 亚洲日韩av无码| 中文字幕无码视频手机免费看| 免费看黄网站在线看| 亚洲邪恶天堂影院在线观看| 暖暖日本免费在线视频 | 亚洲日韩人妻第一页| 18禁在线无遮挡免费观看网站| 亚洲人成电影网站| 亚洲成A人片在线观看中文|