说明:本文基于JDK8进行讨论
charAt()方法
String.charAt(int index)
方法是用于获取字符串中指定位置索引处的字符。
在 Java 中,字符串的索引是从0开始的。我们知道String其实在底层是通过char类型数组来存储字符串的,所以也就是获取某个字符的数组位置。
源码如下:
private final char value[];// 这里存了String的内容
public char charAt(int index) {
if ((index < 0) || (index >= value.length)) {
throw new StringIndexOutOfBoundsException(index);
}
return value[index];// 查询位置
}
基本用法
String str = "Java";
char c = str.charAt(2);
// 输出v
System.out.println(c);
char c1 = str.charAt(0);// 获取第一个字符 J
char c2 = str.charAt(str.length() - 1);// 获取最后一个字符 a
char c3 = str.charAt(5);// 数组越界异常 IndexOutOfBoundsException
我们在idea断点看下
我们再看下如果有中文是什么样的
注意:
charAt
方法返回的是一个char
类型的值。- 参数索引必须在合法范围内,即大于等于0且小于字符串的长度(
0 <= index <= length()-1
)。 charAt
方法是访问字符串中单个字符的方法,如果需要操作多个字符,可以使用substring
方法。