What We Are Learn On This Post
In this article, we will explore how to convert a string into both a single character and an array of characters in Java. I will also take the time to explain what strings, characters, and arrays are for those who may not be familiar.
What is a Character in Java?
Characters are the most primitive data type. A character is a single entity enclosed inside single quotation marks. It can be anything from a letter to a digit, to a punctuation mark, or even just a space!
Post On: | String to Char and Char Array in Java |
Post Type: | Java Tutorials |
Published On: | www.softwaretestingo.com |
Applicable For: | Freshers & Experience |
Get Updates: | SoftwareTestingo Telegram Group |
For Example:
char var1 = 'a'; char var2 = '2'; char var3 = '!'; char var4 = ' ';
What is a String in Java?
Strings are one of the objects (reference type) in programming – they’re used to represent text. A string is simply a series of characters, and you can create them by enclosing their content in double quotation marks.
For example:
String vowels = "Software Testingo";
What is an Array in Java?
ArrayArrays are a fundamental data structure that can store a fixed number of elements of the same data type in Java. They’re simple to use and extremely versatile, making them one of the most popular data structures in Java.
char[] chararray= {'S', 'o', 'f', 't', 'w','a', 'r', 'e'};
Java Strings and Chars
If you’re working with text-based data in Java, there are two data types you can use. Which can be used to store text-based data. The first is called a string, which stores a sequence of one or more characters. The second is called char, and it stores an individual character.
For example, If you want to store the name of a student in a fifth-grade math class, you would store it as a string because it contains multiple characters. But if you only wanted to store the first letter of the student’s name, you would use a char data type.
The char data type is more efficient to use when working with individual characters, as opposed to the String class. This is due to the fact that the String class contains a lot of additional string-based methods which are not necessary when only dealing with one character.
Great! Now that we have a basic understanding of what strings, characters, and arrays are, let’s move on to the next topic.
Let’s Convert a String to a Character
To convert String to Char there are different ways are available in Java.
- Using String.charAt() method
- Using String.toCharArray() method
- Using String.codePointAt() method
- Using String.getChars() method
We will share the different ways with the examples, So that it will be easy for you to understand the topic very well.
String to Char Using charAt() method
We can convert a string to a char in Java by using the charAt() method of the String class. The charAt() method returns one character at a specified index. The signature of the charAt() method is given below:
public char charAt(int index);
Java String to char Example
package com.SoftwareTestingo.String; public class StringToCharExample1 { public static void main(String[] args) { String s="Softwaretestingo"; char c=s.charAt(0); System.out.println("1st character is: "+c); } }
String to Char Using toCharArray() method
A helpful way to get the character at a specific index in a string is to convert the string into a character array using String.toCharArray().
package com.SoftwareTestingo.String; public class StringToCharExample5 { public static void main(String[] args) { String str="Softwaretestingo"; char strChar = (char)str.codePointAt(0); System.out.println("1st character is: "+strChar); } }
String to Char Using codePointAt() method
You can also use the String.codePointAt() method to find the code point value of the character present at a specified index.
package com.SoftwareTestingO.Strings; public class StringToCharExample6 { public static void main(String[] args) { String str="Softwaretestingo"; char strChar = (char) str.codePointAt(0); System.out.println("1st character is: "+strChar); } }
This method is useful for iterating over the code points in a string. It can be used like this:
The String class has a codePointBefore() method that returns the codepoint value before the given index. This is similar to the codePointAt() method, which returns the codepoint value at that index.
package com.SoftwareTestingO.Strings; public class StringToCharExample7 { public static void main(String[] args) { String str="Softwaretestingo"; char strChar = (char) str.codePointBefore(1); System.out.println("1st character is: "+strChar); } }
String to Char Using getChars() method
The getChars() method is useful when you want to copy characters from a string to a character array. This method copies the characters from the specified start index (inclusive) to the specified end index (exclusive) into the destination character array. The method syntax is:
public void getChars(int srcBegin, int srcEnd, char dst[], int dstBegin)
Let’s understand the significance of each of the method arguments.
- srcBegin: index from where the characters will be copied.
- srcEnd: index at which copying will stop. The last index to be copied will be srcEnd-1.
- dst: The destination character array. It should be initialized before calling this method.
- dstBegin: The start index in the destination array.
package com.SoftwareTestingo.String; import java.util.Arrays; public class StringToCharExample3 { public static void main(String[] args) { String str="Welcome to Softwaretestingo Blog"; //Destination Array Size is 16 char[] substringChars = new char[16]; //We are copied from 11-27 and store in Destination array from index 0 str.getChars(11, 27, substringChars, 0); System.out.println(Arrays.toString(substringChars)); } }
Java String to Char Array
To convert the String to Char Array, there are different possible ways is there. Here are some ways you can convert a string to a character array:
- String charAt() method
- Manual code using for loop
- String toCharArray() method
- String getChars() method for subset
Let’s explore some examples of how to convert a string into a char array in Java!
String to Char Array Using charAt() method
The charAt() method can be used to get the character at a specific index in a string.
package com.SoftwareTestingo.String; public class StringToCharExample1 { public static void main(String[] args) { String s="Softwaretestingo"; char c=s.charAt(0); System.out.println("1st character is: "+c); } }
String to Char Array Using for Loop
This method is extremely useful when you want to have some additional logic to populate the char array. For example, skipping duplicate characters or changing them to lowercase, etc. This makes your life much easier and saves you a ton of time in the long run!
package com.SoftwareTestingo.String; import java.util.Arrays; public class StringToCharExample2 { public static void main(String[] args) { String s="Softwaretestingo"; char[] chars = new char[s.length()]; for (int i = 0; i < s.length(); i++) chars[i] = s.charAt(i); System.out.println(Arrays.toString(chars)); } }
String to Char Array Using toCharArray() method
You can use the toCharArray() method to convert a string into a char array. This is the recommended method for converting strings to arrays of characters. For example:
package com.SoftwareTestingo.String; import java.util.Arrays; public class StringToCharExample2 { public static void main(String[] args) { String str="Softwaretestingo"; // create an array of characters char[] strArray = str.toCharArray(); // print vowelArray System.out.println(Arrays.toString(strArray)); } }
String to Char Array Using getChars() method
package com.SoftwareTestingo.String; import java.util.Arrays; public class StringToCharExample3 { public static void main(String[] args) { String str="Welcome to Softwaretestingo Blog"; //Destination Array Size is 16 char[] substringChars = new char[16]; //We are copied from 11-27 and store in Destination array from index 0 str.getChars(11, 27, substringChars, 0); System.out.println(Arrays.toString(substringChars)); } }
Note: If the destination array size is smaller than the required size then we will get the StringIndexOutOfBoundsException exception.
Conclusion:
Now we believe that you have the idea of how to convert strings to char arrays in Java, try it out! If still have any doubts or questions then you can comment in the comment section.
Leave a Reply