📅  最后修改于: 2020-09-26 06:16:40             🧑  作者: Mango
java 字符串 substring()方法返回字符串的一部分。
我们在java子字符串方法中传递开始索引和结束索引编号位置,其中开始索引包含在内,结束索引排斥。换句话说,起始索引从0开始,而终止索引从1开始。
java 字符串有两种类型的子字符串方法。
public String substring(int beginIndex) {
if (beginIndex < 0) {
throw new StringIndexOutOfBoundsException(beginIndex);
}
int subLen = value.length - beginIndex;
if (subLen < 0) {
throw new StringIndexOutOfBoundsException(subLen);
}
return (beginIndex == 0) ? this : new String(value, beginIndex, subLen);
}
public String substring(int startIndex)
and
public String substring(int startIndex, int endIndex)
如果不指定endIndex,则java substring()方法将返回startIndex中的所有字符。
startIndex:起始索引包括在内
endIndex:结束索引是排他的
指定的字符串
StringIndexOutOfBoundsException-如果开始索引为负值或结束索引低于开始索引。
public class SubstringExample{
public static void main(String args[]){
String s1="javatpoint";
System.out.println(s1.substring(2,4));//returns va
System.out.println(s1.substring(2));//returns vatpoint
}}
va
vatpoint
public class SubstringExample2 {
public static void main(String[] args) {
String s1="Javatpoint";
String substr = s1.substring(0); // Starts with 0 and goes to end
System.out.println(substr);
String substr2 = s1.substring(5,10); // Starts from 5 and goes to 10
System.out.println(substr2);
String substr3 = s1.substring(5,15); // Returns Exception
}
}
Javatpoint
point
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: begin 5, end 15, length 10