String類的特點

2021-10-08 18:05:30 字數 1477 閱讀 8124

#1、了解string類

1.string類是被final修飾的,是不能被繼承的

2.string類底層使用陣列結構

jdk9以前使用的是char

jdk9以後使用的是byte

3.string的物件一旦建立就不能修改

底層維護了乙個字串常量池,實現共享

注意:string類的物件每次修改都會產生乙個新的物件

2、string物件的拼接

1.常量池中的字串常量 + 常量池中的字串常量 :結果是儲存在常量池中
string c = "a"+"b";

string ab = "ab";

system.err.println(ab==c); //輸出true

2.變數 + 常量池中的字串常量 : 結果是儲存在堆中的
string a = "a";

string c = "a"+"b";

system.err.println(c==a+"b"); //輸出false

3.如果拼接結果呼叫intern()方法,返回值就在常量池中
string a = "a";

string b = "b";

string c = "a"+"b";

system.err.println(c==a+b); //輸出false,證明string類的拼接中只要有乙個是變數,結果就存在堆中

string a = "a";

string b = "b";

string c = "a"+"b";

system.err.println(c==(a+b).intern()); //輸出true,說明如果拼接結果呼叫intern()方法,返回值就在常量池中

3、string物件的比較

1. == 比較位址值

2. equals()比較的是值本身,區分大小寫

string a = "a";

string d = "ab";

system.out.println(d.equals(a+"b")); //返回true

system.out.println(d.equals(a+"b")); //返回false

4、 equalsignorecase() 比較的也是值本身,但是不區分大小寫
string a = "a";

string d = "ab";

system.out.println(d.equals(a+"b")); //返回true

system.out.println(d.equalsignorecase(a+"b")); //返回值也是true

AJPFX總結String類的特點

string str abc str就是string的乙個物件 字串一旦被賦值,值就不能再被改變了 舉例 string s abc s被賦值為了 abc s bcd s還能繼續賦值成 bcd 字串一旦被賦值,值就不能改變,說的是 值 不能改變 就是說 abc 永遠不變 永遠是 abc 構造方法 st...

字串String類有啥特點

字串的學習,有的同學就看看api,記下方法,有的同學看看源 還有的同學畫畫圖,自然學的深度是不一樣的。cache the hash code for the string private int hash default to 0string物件的字元內容是儲存在乙個字元陣列中的。private意味...

String類的一些特點以及使用方法

string類 string 特點 利用多型來建立字串 char charat int index charsequence sequence abc string s helloworldhello system.out.println charat s.charat 0 system.out.p...