Автор оригинала: Pankaj Kumar.
Сегодня мы узнаем, как преобразовать строку в массив символов, а затем массив символов в строку на Java.
Строка tochararray
Строка Java – это поток символов. Класс String предоставляет служебный метод для преобразования строки в массив символов в java. Давайте рассмотрим это с помощью простой программы.
package com.journaldev.util; import java.util.Arrays; public class StringToCharArray { public static void main(String[] args) { String str = "journaldev.com"; char[] charArr = str.toCharArray(); // print the char[] elements System.out.println("String converted to char array: " + Arrays.toString(charArr)); } }
На рисунке ниже показан результат, полученный вышеуказанной программой.
Строка.toCharArray
внутреннее использование Система класс arraycopy
метод. Вы можете видеть это из приведенной ниже реализации метода.
public char[] toCharArray() { char result[] = new char[value.length]; System.arraycopy(value, 0, result, 0, value.length); return result; }
Обратите внимание на использование метода Arrays.toString
для печати массива символов. Массивы
– это служебный класс в java, который предоставляет множество полезных методов для работы с массивом. Например, мы можем использовать класс Arrays для поиска, сортировки и операций копирования массива java|/.
массив символов в строку
Давайте рассмотрим простую программу для преобразования массива символов в строку на Java.
package com.journaldev.util; public class CharArrayToString { public static void main(String[] args) { char[] charArray = {'P','A','N','K','A','J'}; String str = new String(charArray); System.out.println(str); } }
На рисунке ниже показан вывод, полученный программой преобразования массива символов в строку.
Мы используем конструктор класса String, который принимает массив символов в качестве аргумента для создания строки из массива символов. Однако, если вы посмотрите на реализацию этого конструктора, он использует метод Arrays.copyOf
внутри.
public String(char value[]) { this.value = Arrays.copyOf(value, value.length); }
Снова Arrays.copyOf
метод внутреннего использования System.arraycopy
собственный метод.
public static char[] copyOf(char[] original, int newLength) { char[] copy = new char[newLength]; System.arraycopy(original, 0, copy, 0, Math.min(original.length, newLength)); return copy; }
Таким образом, мы можем ясно видеть, что System arraycopy () – это метод, используемый как в строках для массива символов, так и в строковых операциях с массивом символов. Это все для преобразования строки в массив символов и массива символов в пример программы.
Ссылка: toCharArray API Doc