String的介紹 乾貨 和equals區別

2021-08-25 05:38:36 字數 1351 閱讀 9893

string類是final類,也即意味著string類不能被繼承,並且它的成員方法都預設為final方法。 大家**原始碼會發現string類其實是通過char陣列來儲存字串的.string物件一旦被建立就是固定不變的了,對string物件的任何改變都不影響到原物件,相關的任何change操作都會生成新的物件

string a="q1";

string b="q2";

system.out.println(a+b);

//把二者拼接起來輸出結果為q1q2。操作string我們可以使用stringbuffer和stringbuilder;

string a="b";

string b="b";

system.out.println(a==b);

system.out.println(a.equals(b));

//輸出結果為true true ==是比較二個物件是否一致 由於我們並沒有new物件 a和b都是常量池中物件所以結果是true equals是比較兩個值是否一樣 所以結果為true

string a="b";

string b=new string("b");

system.out.println(a==b);

system.out.println(a.equals(b));

//輸出結果為false true b是new出來的物件存放在堆中 兩個值的指標是指向兩個不同的物件 所以==結果為false 和equals依然是true

string a= "abc";

string b = "a";

string c = "bc";

string d = b + c;

system.out.println(a == d);

string str = new string("abc");//每new一次就會建立乙個新的物件。每個物件的位址都不一樣

string str = "abc"; //直接宣告變數str 然後查詢棧中有沒有存放"abc",如果沒有,則將"abc"存放進棧,並令str指向」abc」,如果已經有」abc」 則直接令str指向「abc」(這裡建立了str)

string str1="abc"; //這裡的str1直接指向str的abc所以位址是一樣的(str1並沒有被建立!是直接指向之前建立的str )

string類中有多個方法能讓我們對其進行操作

substring 擷取指定的字串

trim 去除string中的空格

length 獲得string的長度

split 通過特點的格式把string 分割為字串陣列

c 中 String和string的區別介紹

不知道大家有沒有發現,在c string型別可以寫成string和string,那麼,它們有什麼區別呢?程式設計客棧 string是c 中的類 string是framework的類 c st程式設計客棧ring 對映為www.cppcns.com fr程式設計客棧amework的 string。如果...

乾貨丨XML和HTML的區別和聯絡介紹

xml和html都是標記文字,它們在結構上大致相同,都是以標記的形式來描述資訊。但實際上它們有著本質的區別,為了讓初學者不產生混淆,接下來對html和xml進行比較,具體如下 1.html中的標記是用來顯示資料的,而xml中的標記用來描述資料的性質和結構。2.html是不區分大小寫的,而xml是嚴格...

C 語言string類介紹和示例

在c語言中,用0結尾的字元陣列表示字串,c的字串有乙個問題,就是定義後大小不能改變,存入的內容只能比陣列小,不能大,如果不小心存多了,會引起記憶體的溢位,這個問題讓程式設計師很鬱悶。c 的string部分的解決了這個問題,它會隨存放字元的長度自動伸縮,程式設計師不必擔心記憶體溢位的問題。string...