Java中字符串的截取和分隔可以使用以下方法:
截取子字符串
可以使用substring方法截取字符串的一部分,其語(yǔ)法為:public String substring(int beginIndex)或者public String substring(int beginIndex, int endIndex)。
其中,beginIndex表示開始位置的索引,包括開始位置,endIndex表示結(jié)束位置的索引,不包括結(jié)束位置。如果不指定endIndex,則表示截取從beginIndex開始到字符串末尾的所有字符。
例如:
String str = "hello world";
String subStr1 = str.substring(0, 5); // 截取從0到5(不包含5)的子字符串
String subStr2 = str.substring(6); // 截取從6開始到字符串末尾的子字符串
分割字符串
可以使用split方法將字符串按照指定的分隔符進(jìn)行分割,其語(yǔ)法為:public String[] split(String regex),其中regex表示分隔符的正則表達(dá)式。
例如:
String str = "a,b,c,d,e";
String[] arr = str.split(","); // 按照逗號(hào)進(jìn)行分割,返回字符串?dāng)?shù)組
字符串截取和分割的注意事項(xiàng)
在使用字符串截取和分割的時(shí)候,需要注意以下幾點(diǎn):
字符串截取和分割的方法都會(huì)返回一個(gè)新的字符串或字符串?dāng)?shù)組,原字符串并不會(huì)被修改。
substring方法中的索引值必須在字符串的有效范圍內(nèi),否則會(huì)拋出IndexOutOfBoundsException異常。
split方法中的正則表達(dá)式如果不合法,會(huì)拋出PatternSyntaxException異常。
split方法返回的字符串?dāng)?shù)組中不包含分隔符,如果字符串以分隔符結(jié)尾,返回的數(shù)組中最后一個(gè)元素為空字符串。