0x00 簡述
本次文章主要介紹String類如何判斷是否相等,求字符串的子串,如何連結字符串等操作的實現,並給出相應的代碼。
0x01 String類判斷是否相等
package a;
public class CompareString {
public static void main(String[] args) {
String a="周老師厲害";
String b="周老師牛逼";
String c="周老師厲害";
System.out.println(a.equals(b));
System.out.println(a.equals(c));
}
}
//以上輸出結果爲false true
值得注意的是:String類判斷相等的方法並不能如同數值對比一樣使用==來判斷,而是使用Java自帶的特定方法equals來判斷。其中原因可參考小結中的鏈接:String類型的比較
0x02 Substring求字符串的子串
public class SubString{
public static void main(String[] args){
String str = "DANIAO";
System.out.println("字符串爲:" + str);
System.out.println("子串爲:");
//輸出字符串和子串作爲校驗
for(int i = 0; i < str.length(); i++){
for (int j = i+1; j<=str.length(); j++){
System.out.println(str.substring(i,j));
}
}
}
}
/*以下爲控制檯輸出結果
字符串爲:DANIAO
子串爲:
D
DA
DAN
DANI
DANIA
DANIAO
A
AN
ANI
ANIA
ANIAO
N
NI
NIA
NIAO
I
IA
IAO
A
AO
O
———————————————————*/
通過使用循環嵌套和Substring方法,可以輸出任何字符串的子串。
0x03 Stringbuilder連結字符串
public class StringBuilder{
/**
* @param args
*/
public static void main(String[] args) {
StringBuilder sb = new StringBuilder();
// 追加字符串
sb.append("Jasonzhou");
// 插入
sb.insert(0 , "周景 ");
// 替換
sb.replace(2, 3, ","); // 將空格變爲逗號
System.out.println(sb);
// 刪除
sb.delete(2, 3); // 刪除逗號
System.out.println(sb);
// 反轉
sb.reverse();
System.out.println(sb);
}
}
/*以下爲控制檯輸出結果
周景,Jasonzhou
周景Jasonzhou
uohznosaJ景周
———————————————————*/
上面代碼示範了StringBuilder的追加、插入、替換、刪除等操作,這些操作改變了StringBuilder裏的字符序列,這就是StringBuilder與String之間的最大區別:StringBuilder的字符序列是可變的。
0x04 小結
本章介紹了字符串的相關知識及用法,String類代表字符串。Java程序中的所有字符串字面值(如“DANIAO”)都作爲此類的實例實現。也就是說,在Java中,只要是被“”概括的內容都是字符串,都是string的一個具體對象。
字符串最大特點:(對象)一旦被初始化,就不可以改變。(字符串常量)
但可以通過改變調用方式來實現獲得不同的字符串,如Substring和Stringbuilder。
參考及引用:
String類型的比較(爲什麼比較字符串是否相等時不用=號用equals()的)
求字符串的所有子串-java
百度百科——Substring用法
java StringBuilder類的詳解及簡單實例
String類的概述及常見方法使用
我的老師周景
筆者的網站