String學習總結
阿新 • • 發佈:2022-03-22
-
什麼是String?
String類即字串型別,並不是java的基本資料型別,但可以像基本資料型別一樣使用
看下列程式碼,它們的值在建立後不能被更改;
public final class String
implements java.io.Serializable, Comparable<String>, CharSequence {
/** The value is used for character storage. */
private final char value[];
}
因此String物件是不可變的
-
String型別怎麼使用
在Java中用String類的構造方法來建立字串變數,常用的構造方法如下:
-
String()
一個String物件,可表示一個空字元序列
String s = new String();
-
String(char a[])
用一個字元陣列a建立String物件
char a[] = {'g','o','o','d'};
String s = new String(a);
//等價於
String s = new String("good");
-
String(char a[],int offset,int length)
char a[] = {'s','t','u','d','e','n','t'};
String s = new String(a,2,4);
//等價於
String s = new String("uden");
-
String可以做些什麼
使用String類的length()方法可獲取宣告的字串物件的長度。
lastIndexOf()方法返回的是搜尋的字元最後出現位置的索引。
使用String類的charAt()方法可獲取指定索引處的字元,返回字元的索引。
還有其他方法可以檢視java的API文件
注意
-
”==“和equal()方法比較
比較運算子”==“比較的是記憶體位置,不適宜拿來比較字串
equal()方法比較的兩個字串內容必須完全一樣
-
StringBuilder和StringBuffer比較
StringBuilder和StringBuffer執行速度都比String要快,在單個執行緒中StringBuilder要比StringBuffer快,但是在多執行緒中StringBuilder是不安全的,這時就要使用StringBuffer類來實現。