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.
Java and Python Developer for 20+ years, Open Source Enthusiast, Founder of https://www.askpython.com/, https://www.linuxfordevices.com/, and JournalDev.com (acquired by DigitalOcean). Passionate about writing technical articles and sharing knowledge with others. Love Java, Python, Unix and related technologies. Follow my X @PankajWebDev
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
Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.
Full documentation for every DigitalOcean product.
The Wave has everything you need to know about building a business, from raising funding to marketing your product.
Stay up to date by signing up for DigitalOcean’s Infrastructure as a Newsletter.
New accounts only. By submitting your email you agree to our Privacy Policy
Scale up as you grow — whether you're running one virtual machine or ten thousand.
Sign up and get $200 in credit for your first 60 days with DigitalOcean.*
*This promotional offer applies to new accounts only.