Sometimes we have to convert char to String in java program. Here we will look into different methods you can convert character to string in java. We will also learn how to convert char array to String using different methods.
Here is a simple program showing different ways to convert char to string in java.
package com.journaldev.string;
public class CharToStringJava {
public static void main(String[] args) {
// char to string
char c = 'a';
String str = String.valueOf(c);
// using Character class
str = Character.toString(c);
// another way
str = new Character(c).toString();
// string concatenation - worst performance
str = "" + c;
// char array to string
char[] ca = { 'a', 'b', 'c' };
str = String.valueOf(ca);
// recommended way
str = new String(ca);
}
}
Let’s look at these methods one by one.
This is the most efficient method to convert char to string. You should always use this method and this is the recommended way to convert character to string in java program.
This method internally calls String.valueOf(c)
, so there is no difference between this one. You can use this too if you are already using Character class in your code.
This is another way, however not recommended because we are creating a Character unnecessarily.
str = "" + c;
is the worst way to convert char to string because internally it’s done by new StringBuilder().append("").append(c).toString()
that is slow in performance. Let’s look at the two methods to convert char array to string in java program.
You can use String(char[] value)
constructor to convert char array to string. This is the recommended way.
String valueOf method is overloaded and there is one that accepts character array. Internally this method calls the String constructor, so it’s same as above method. That’s all for converting char to string and char array to string in java.
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
While we believe that this content benefits our community, we have not yet thoroughly reviewed it. If you have any suggestions for improvements, please let us know by clicking the “report an issue“ button at the bottom of the tutorial.
Hi Pankaj, Code below prints incorrect value while doing string processing. How do we convert int[] to String . int[] is converted to by stream processing. public class StringFilter { public static void main(String[] args) { String test= “abcd”; int[] array = test.chars().toArray(); System.out.println(String.valueOf(array)); } }
- Yogesh
Nice article…www.marpasys.com
- M A
Thanks Pankaj
- ajay