Java 字符串方法完全参考
Java String 方法完全参考
Java String 类所有方法的完整参考指南,含语法、参数、返回值和示例。
Java 的 String 类提供丰富的方法用于字符串操作。以下按功能分类列出所有方法。
字符串查询与检查
| 方法 | 描述 |
charAt(int index) | 返回指定索引处的字符 |
codePointAt(int index) | 返回指定索引处的 Unicode 代码点 |
codePointBefore(int index) | 返回指定索引前的 Unicode 代码点 |
codePointCount(int beginIndex, int endIndex) | 返回指定范围内的 Unicode 代码点数量 |
contains(CharSequence s) | 检查字符串是否包含指定子序列 |
endsWith(String suffix) | 检查字符串是否以指定后缀结尾 |
startsWith(String prefix) | 检查字符串是否以指定前缀开头 |
startsWith(String prefix, int toffset) | 从指定偏移量检查是否以指定前缀开头 |
indexOf(int ch) | 返回指定字符首次出现的索引 |
indexOf(int ch, int fromIndex) | 从指定索引开始搜索字符首次出现位置 |
indexOf(String str) | 返回指定子串首次出现的索引 |
indexOf(String str, int fromIndex) | 从指定索引开始搜索子串首次出现位置 |
lastIndexOf(int ch) | 返回指定字符最后一次出现的索引 |
lastIndexOf(int ch, int fromIndex) | 从指定索引向前搜索字符最后一次出现位置 |
lastIndexOf(String str) | 返回指定子串最后一次出现的索引 |
lastIndexOf(String str, int fromIndex) | 从指定索引向前搜索子串最后一次出现位置 |
isEmpty() | 检查字符串长度是否为 0 |
length() | 返回字符串长度 (字符数) |
matches(String regex) | 检查字符串是否匹配给定正则表达式 |
字符串提取与子串
| 方法 | 描述 |
substring(int beginIndex) | 返回从指定索引开始到结尾的子串 |
substring(int beginIndex, int endIndex) | 返回指定索引范围内的子串 |
subSequence(int beginIndex, int endIndex) | 返回指定范围内的字符序列 (实现 CharSequence 接口) |
toCharArray() | 将字符串转换为字符数组 |
getBytes() | 使用平台默认字符集将字符串编码为字节数组 |
getBytes(String charsetName) | 使用指定字符集将字符串编码为字节数组 |
getBytes(Charset charset) | 使用指定字符集将字符串编码为字节数组 |
字符串修改与替换
| 方法 | 描述 |
replace(char oldChar, char newChar) | 将所有出现的旧字符替换为新字符 |
replace(CharSequence target, CharSequence replacement) | 将所有匹配目标序列替换为替换序列 |
replaceAll(String regex, String replacement) | 使用正则表达式替换所有匹配的子串 |
replaceFirst(String regex, String replacement) | 使用正则表达式替换首个匹配的子串 |
trim() | 移除字符串首尾的空白字符 |
strip() | 移除首尾空白字符 (Unicode 感知,Java 11+) |
stripLeading() | 移除前导空白字符 (Java 11+) |
stripTrailing() | | 移除尾部空白字符 (Java 11+) |
字符串大小写转换
| 方法 | 描述 |
toLowerCase() | 使用默认语言环境将字符串转为小写 |
toLowerCase(Locale locale) | 使用指定语言环境转为小写 |
toUpperCase() | 使用默认语言环境转为大写 |
toUpperCase(Locale locale) | 使用指定语言环境转为大写 |
字符串比较
| 方法 | 描述 |
compareTo(String anotherString) | 按字典序比较两个字符串 |
compareToIgnoreCase(String str) | 忽略大小写按字典序比较 |
equals(Object anObject) | 比较此字符串与指定对象是否相等 |
equalsIgnoreCase(String anotherString) | 忽略大小写比较两字符串是否相等 |
regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len) | 测试两字符串区域是否匹配 |
regionMatches(int toffset, String other, int ooffset, int len) | 测试两字符串区域是否匹配 (区分大小写) |
字符串连接与分割
| 方法 | 描述 |
concat(String str) | 将指定字符串连接到此字符串末尾 |
join(CharSequence delimiter, CharSequence... elements) | 使用分隔符连接多个字符串 (静态方法,Java 8+) |
join(CharSequence delimiter, Iterable extends CharSequence> elements) | 使用分隔符连接可迭代对象中的字符串 (Java 8+) |
split(String regex) | 根据正则表达式拆分字符串为数组 |
split(String regex, int limit) | 根据正则拆分,限制结果数组长度 |
字符串格式化与转换
| 方法 | 描述 |
format(String format, Object... args) | 使用指定格式字符串和参数返回格式化字符串 (静态方法) |
format(Locale l, String format, Object... args) | 使用指定语言环境格式化 (静态方法) |
valueOf(boolean b) | 返回布尔值的字符串表示 (静态方法) |
valueOf(char c) | 返回字符的字符串表示 (静态方法) |
valueOf(char[] data) | 返回字符数组的字符串表示 (静态方法) |
valueOf(char[] data, int offset, int count) | 返回字符数组子范围的字符串表示 (静态方法) |
valueOf(double d) | 返回 double 值的字符串表示 (静态方法) |
valueOf(float f) | 返回 float 值的字符串表示 (静态方法) |
valueOf(int i) | 返回 int 值的字符串表示 (静态方法) |
valueOf(long l) | 返回 long 值的字符串表示 (静态方法) |
valueOf(Object obj) | 返回对象的字符串表示 (静态方法) |
其他实用方法
| 方法 | 描述 |
intern() | 返回字符串的规范表示 (从字符串池获取或添加) |
hashCode() | 返回字符串的哈希码 |
contentEquals(StringBuffer sb) | 比较字符串与 StringBuffer 内容是否相等 |
contentEquals(CharSequence cs) | 比较字符串与 CharSequence 内容是否相等 |
toString() | 返回此字符串对象本身 (实现 CharSequence 接口) |
chars() | 返回字符串字符的 IntStream (Java 9+) |
codePoints() | 返回字符串代码点的 IntStream (Java 9+) |
indent(int n) | 调整字符串每行缩进 (Java 12+) |
transform(Function super String, ? extends R> f) | 对字符串应用函数变换 (Java 12+) |
describeConstable() | 返回描述此字符串的 Optional (Java 12+) |
resolveConstantDesc(MethodHandles.Lookup lookup) | 解析常量描述符 (Java 12+) |
注意:此列表基于 Java 17+ 版本。部分方法在较旧版本中可能不可用。完整官方文档请参阅 Java String API。