charAt() in Java – 如何使用 Java charAt() 方法
Java 中的方法返回给定或指定索引处的字符串中的字符值。
charAt()
char
在本文中,我们将了解如何使用该方法,从其语法开始,然后通过一些示例/用例。 charAt()
如何使用 Java charAt() 方法
以下是该方法的语法: charAt()
public char charAt(int index)
请注意,使用该方法从字符串返回的字符具有数据类型。我们将在本文后面看到这如何影响返回值的串联。 charAt()
char
现在让我们看一些例子。
public class Main {
public static void main(String[] args) {
String greetings = "Hello World";
System.out.println(greetings.charAt(0));
// H
}
}
在上面的代码中,我们的字符串 - 存储在一个名为的变量中 - 说“Hello World”。我们使用该方法获取索引 0 处的字符,即 H。 greetings
charAt()
第一个字符的索引始终为 0,第二个字符的索引始终为 1,依此类推。子字符串之间的空格也算作索引。
在下一个示例中,我们将看到当我们尝试连接返回的不同字符时会发生什么。串联意味着将两个或多个值连接在一起(在大多数情况下,此术语用于连接字符串中的字符或子字符串)。
public class Main {
public static void main(String[] args) {
String greetings = "Hello World";
char ch1 = greetings.charAt(0); // H
char ch2 = greetings.charAt(4); // o
char ch3 = greetings.charAt(9); // l
char ch4 = greetings.charAt(10); // d
System.out.println(ch1 + ch2 + ch3 + ch4);
// 391
}
}
使用该方法,我们得到了索引0,4,9和10处的字符,分别是H,o,l和d。 charAt()
然后,我们尝试打印并连接以下字符:。 System.out.println(ch1 + ch2 + ch3 + ch4);
但是,我们没有得到“Hold”,而是得到了391。发生这种情况是因为返回的值不再是字符串,而是数据类型为 。因此,当我们连接它们时,解释器会添加它们的 ASCII 值。 char
H 的 ASCII 值为 72,o 的值为 111,l 的值为 108,d 的值为 100。当我们将它们相加时,我们得到391,这是在上一个示例中返回的。
字符串索引出界异常错误
当我们传入的索引号超过字符串中的字符数时,我们将在控制台中收到 StringIndexOutOfBoundsException 错误。
此错误也适用于使用 Java 中不支持的负索引。在支持负索引的编程语言(如Python)中,传入-1将为您提供数据集中的最后一个字符或值,类似于0始终返回第一个字符。
下面是一个示例:
public class Main {
public static void main(String[] args) {
String greetings = "Hello World";
char ch1 = greetings.charAt(20);
System.out.println(ch1);
/* Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 20
*/
}
}
在上面的代码中,我们传入了一个索引 20:这超过了变量中的字符数 - 所以我们得到了一个错误。您可以在上面的代码块中看到注释掉的错误消息。 char ch1 = greetings.charAt(20);
greetings
同样,如果我们传入一个负值,如下所示:,我们会得到类似的错误。 char ch1 = greetings.charAt(-1);
结论
在本文中,我们学习了如何在Java中使用该方法。我们了解了如何根据字符串中的索引号返回字符串中的字符,以及连接这些字符时会发生什么情况。 charAt()
最后,我们讨论了一些在Java中使用该方法时会收到错误响应的实例。 charAt()
祝您编码愉快!
转载自:https://juejin.cn/post/7085322197639954445