java 如何截取
截取字符串的方法
在 Java 中,字符串截取可以通过 substring() 方法实现。该方法有两种重载形式:
-
指定起始索引截取到末尾
语法:String substring(int beginIndex)示例:

String str = "Hello, World!"; String result = str.substring(7); // 结果为 "World!" -
指定起始索引和结束索引(不包含结束索引字符)
语法:String substring(int beginIndex, int endIndex)示例:

String str = "Hello, World!"; String result = str.substring(0, 5); // 结果为 "Hello"
注意事项
- 索引从 0 开始,包含起始索引,不包含结束索引。
- 若索引越界(如负数或超过字符串长度),会抛出
StringIndexOutOfBoundsException。
其他截取场景
截取部分字符数组
使用 String 构造函数或 Arrays.copyOfRange():
char[] chars = {'a', 'b', 'c', 'd'};
String str = new String(chars, 1, 2); // 从索引1开始截取2个字符,结果为 "bc"
正则表达式截取
通过 split() 或正则匹配:
String str = "apple,banana,orange";
String[] parts = str.split(","); // 按逗号分割,结果为 ["apple", "banana", "orange"]
使用 StringUtils(Apache Commons)
若项目中引入 org.apache.commons.lang3.StringUtils,可使用更灵活的截取方法:
String str = "Hello";
String result = StringUtils.substring(str, 1, 4); // 结果为 "ell"
示例代码整合
public class Main {
public static void main(String[] args) {
String str = "Programming";
System.out.println(str.substring(3)); // 输出 "gramming"
System.out.println(str.substring(3, 7)); // 输出 "gram"
}
}






