Java 字串初識__Java

來源:互聯網
上載者:User

一、字串(String)

1、在 Java 中,字串被作為 String 類型的對象處理。String 類位於 java.lang 包中。預設情況下,該包被自動匯入所有的程式。

2、如何初始化字串

//定義一個字串String s1 = "Java";//建立一個Null 字元串String s2 = new String();//建立一個Null 字元串,並賦值String s3 = new String("com.lemon");

3、字串的不變性:String 對象建立後則不能被修改,是不可變的,所謂的修改其實是建立了新的對象,所指向的記憶體空間不同。

4、 一旦一個字串在記憶體中建立,則這個字串將不可改變。如果需要一個可以改變的字串,我們可以使用StringBuffer或者StringBuilder(後面章節中會講到)。

5、 每次 new 一個字串就是產生一個新的對象,即便兩個字串的內容相同,使用 ”==” 比較時也為 ”false” ,如果只需比較內容是否相同,應使用 ”equals()” 方法

例子:

        String s01 = "Java";        String s02 = "Java";        String s03 = "I love" + s01;        String s4 = "I love " + s01;        // 比較字串s01和s02        // imooc為常量字串,多次出現時會被編譯器最佳化,只建立一個對象,true        System.out.println("s01和s02記憶體位址相同嗎。" + (s01 == s02));        //比較字串s01和s03  false        System.out.println("s01和s03記憶體位址相同嗎。" +   (s01 == s03)              );        // s01是變數,s04在運行時才知道具體值,所以s03和s04是不同的對象  false        System.out.println("s03和s04記憶體位址相同嗎。" + (s4 == s03));        // 類比下        String object1 = new String("OC");        String object2 = new String("OC");        String object3 = "OC";        // == 比較是引用對象的記憶體位址 false        System.out.println(object1 == object2);        // == 比較兩個引用對象的記憶體位址 false        System.out.println(object1 == object3);        //  equals 比較值 true        System.out.println(object1.equals(object2));

demo

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.