“阿米戈,你怎麼看?繼 int 之後最受歡迎的 Java 類是什麼?”
“你已經在課程的標題中給了我劇透,艾莉。是String
!”
“的確,它是一個劇透。String
絕對是無處不在。它有一堆有用的方法,你最好知道。
“該類String
是除原始類型之外唯一可以在語句中使用其文字的類switch
;編譯器以特殊方式處理字符串加法和 String 對象;對像String
以特殊方式存儲在內存中。基本上,該類String
是一個非常特別班。
“此外,該String
課程還有一堆輔助類,其目的是進一步簡化 Java 中的字符串處理。當你學會所有這些後,很多事情對你來說真的會變得容易得多。”
“我等不及了。”
”好吧,我們就從這個生態系統的核心——類的組織開始String
。類的結構String
其實很簡單:裡面是一個字符數組(char
array),裡面存儲了字符串的所有字符。對於例如,這是單詞“Hello”的存儲方式:
這一點很重要。
其實,這並不完全準確。因為這個String
類非常重要,它使用了很多優化,並且數據在內部存儲的不是字符數組,而是簡單的字節數組。
String 類的方法
該類String
有很多方法:僅它就有 18 個構造函數!所以,下面我將只列出最常用的:
方法 | 描述 |
---|---|
|
返回字符串中的字符數 |
|
檢查字符串是否為空字符串 |
|
檢查字符串是否僅包含空白字符:空格、製表符、換行符等。 |
|
返回字符串中索引位置的字符。 |
|
返回組成字符串的字符數組(副本) |
|
將字符串轉換為一組字節並返回字節數組。 |
|
將字符串拆分為多個子字符串。 |
|
將多個子字符串連接在一起 |
|
將字符串放入字符串池。 |
“這看起來很不錯!”
“讓我們編寫一個程序,將文件路徑從 Unix 風格轉換為 Windows 風格。Unix 使用字符/
分隔文件夾,而 Windows 使用字符\
。
解決方案 1.使用char
數組
代碼 | 筆記 |
---|---|
|
創建一個 Scanner 對象 從控制台讀取一行 將字符串轉換為字符數組 在字符上循環 如果字符是 / ,則將其替換為 \ . 不要忘記逃跑。根據字符數組創建一個新字符串。 顯示字符串。 |
解決方案 2.使用split()
和join()
方法:
代碼 | 筆記 |
---|---|
|
創建一個 Scanner 對象 從控制台讀取一行 Convert string to array of strings。該 / 字符用作分隔符(額外的兩個斜杠是雙重轉義的結果)。連接字符串數組中的所有字符串。用作分隔符(我們看到它轉義了)。 顯示字符串。 \ |
解決方案三、使用replace(char oldChar, char newChar)
方法:
代碼 | 筆記 |
---|---|
|
創建一個 Scanner 對象 從控制台讀取一行 只需將一個字符替換為另一個字符 (第二個字符被轉義) 顯示字符串。 |
“我最喜歡第三種解決方案。但我會同時練習這三種方法。”
“幹得好,阿米戈,我看你已經迫不及待想要將新知識付諸實踐了,課程結束了。”
GO TO FULL VERSION