Java 字串用點 (.) 分割
在 Java 中, split() 方法通常用於根據指定的分隔符號。然而,當嘗試在文字點 (.) 上分割字串時,程式設計師會遇到以下錯誤:
fileName.split(".")[0]; ArrayIndexOutOfBoundsException
要了解此異常的原因,我們必須深入研究正規表示式。點 (.) 是正規表示式中的元字符,可匹配任何字符。因此,使用文字點而不轉義它會導致無意的拆分行為。
正確的方法是使用反斜線() 轉義點,以確保它被解釋為文字字元:
fileName.split("\.")[0];
這確保了字串在文字點字元處專門分割,而不是任何其他字元。
另一個問題當輸入字串僅由點 (.) 組成時,可能會出現 ArrayIndexOutOfBoundsException。為了避免這種邊緣情況,請使用split() 的重載版本,並將limit 參數設為負值:
fileName.split("\.", -1)[0];
將limit 設定為負值會停用從結果陣列中刪除尾隨空白的行為,確保即使輸入字串只是一個點,也會傳回一個包含兩個空格的數組:
".".split("\.", -1) // [""," "]
透過遵循這些方法,您可以有效地拆分Java 字串點字符,同時避免潛在的異常。
以上是如何使用點 (.) 作為分隔符號正確分割 Java 字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!