Как преобразовать символ в строку?
Я имею переменную типа <code>char</code>, и мне нужно преобразовать её в тип <code>String</code>. Как я могу выполнить это преобразование?
5 ответ(ов)
Ниже представлены различные способы преобразования символа char c в строку String s (в порядке уменьшения скорости и эффективности):
char c = 'a';
String s = String.valueOf(c); // самый быстрый и эффективный по памяти
String s = Character.toString(c);
String s = new String(new char[]{c});
String s = String.valueOf(new char[]{c});
String s = new Character(c).toString();
String s = "" + c; // самый медленный и неэффективный по памяти
Если вам нужна высокая производительность и экономия памяти, лучшим выбором будет String.valueOf(c). Остальные методы менее эффективны и могут потребовать больше затрат на память.
Вы можете использовать любой из следующих способов, чтобы преобразовать символ в строку в Java:
С помощью метода
String.valueOf():String str = String.valueOf('c');С помощью метода
Character.toString():String str = Character.toString('c');Конкатенируя символ с пустой строкой:
String str = 'c' + "";
Все указанные способы корректно выполняют задачу преобразования символа в строку. Выбор метода может зависеть от ваших предпочтений или стилистических соображений.
Используйте метод Character.toString() следующим образом:
char mChar = 'l';
String s = Character.toString(mChar);
Этот код преобразует символ mChar в строку s.
Попробуйте это: Character.toString(aChar) или просто так: aChar + "".
Существует несколько способов преобразования char в String в Java. Первый способ — воспользоваться статическим методом toString() класса Character:
char ch = 'I';
String str1 = Character.toString(ch);
На самом деле, этот метод toString внутри себя использует метод valueOf из класса String, который работает с массивом символов:
public static String toString(char c) {
return String.valueOf(c);
}
Следовательно, второй способ — это использование метода valueOf напрямую:
String str2 = String.valueOf(ch);
Метод valueOf класса String также использует массив символов:
public static String valueOf(char c) {
char data[] = {c};
return new String(data, true);
}
Таким образом, третий способ — это создание анонимного массива для обертки единственного символа и передача его в конструктор String:
String str4 = new String(new char[]{ch});
Четвёртый способ — это конкатенация:
String str3 = "" + ch;
Этот подход на самом деле использует метод append из класса StringBuilder, что является предпочтительным вариантом, если вы выполняете конкатенацию в цикле.
Почему предпочтительнее использовать char[] вместо String для хранения паролей?
Как преобразовать строку в int в Java?
Как преобразовать строку в InputStream в Java?
Как преобразовать int в String?
Почему этот код с использованием случайных строк выводит "hello world"?