Course – LS – All

Get started with Spring and Spring Boot, through the Learn Spring course:

>> CHECK OUT THE COURSE

1. Introduction

The charAt() method of the String class returns the character at a given position of a String. This is a useful method that has been available from version 1.0 of the Java language.

In this tutorial, we will explore the usage of this method with some examples. We’ll also learn how to get the character at a position as a String.

2. The charAt() Method

Let’s take a look at the method signature from the String class:

public char charAt(int index) {...}

This method returns the char at the index specified in the input parameter. The index ranges from 0 (the first character) to the total length of the string – 1 (the last character).

Now, let’s see an example:

String sample = "abcdefg";
Assert.assertEquals('d', sample.charAt(3));

In this case, the result was the fourth character of the string – the character “d”.

3. Expected Exception

The runtime exception IndexOutOfBoundsException is thrown if the parameter index is negative or if it’s equal to or greater than the length of the string:

String sample = "abcdefg";
assertThrows(IndexOutOfBoundsException.class, () -> sample.charAt(-1));
assertThrows(IndexOutOfBoundsException.class, () -> sample.charAt(sample.length()));

4. Get Character as a String

As we mentioned earlier, the charAt() method returns a char. Often, we need a String literal instead.

There are different ways to convert the result to a String. Let’s assume below String literal for all the examples:

String sample = "abcdefg";

4.1. Using the Character.toString() Method

We can wrap the result of charAt() with Character.toString() method:

assertEquals("a", Character.toString(sample.charAt(0)));

4.2. Using the String.valueOf() Method

Finally, we can use the static method String.valueOf():

assertEquals("a", String.valueOf(sample.charAt(0)));

5. Conclusion

In this article, we learned how to use the charAt() method to get a character at a given position of a String. We also saw what exceptions could occur when using it and a few different ways of getting the character as a String.

And, as always, all the snippets can be found over on Github.

Course – LS – All

Get started with Spring and Spring Boot, through the Learn Spring course:

>> CHECK OUT THE COURSE
res – REST with Spring (eBook) (everywhere)
Comments are open for 30 days after publishing a post. For any issues past this date, use the Contact form on the site.