Как преобразовать массив символов в массив строк - PullRequest
5 голосов
/ 13 июля 2011

Как преобразовать массив символов в массив строк?Или, еще лучше, вы можете взять строку и преобразовать ее в массив строк, который содержит каждый символ строки?

Редактировать: спасибо @Emiam!Использовал его код в качестве временного массива, затем использовал другой массив, чтобы избавиться от лишнего пространства, и он отлично работает:

String[] tempStrings = Ext.split("");
String[] mStrings = new String[Ext.length()];

for (int i = 0; i < Ext.length(); i++) 
    mStrings[i] = tempStrings[i + 1];

Ответы [ 4 ]

18 голосов
/ 13 июля 2011

Или, еще лучше, вы можете взять строку и преобразовать ее в массив строк который содержит каждый символ строки?

Я думаю, что это можно сделать, разделив строку на "". Как это:

String [] myarray = mystring.split("");

Edit: Если вам не нужна ведущая пустая строка, вы должны использовать регулярное выражение: "(?! ^)"

String [] mySecondArray = mystring.split("(?!^)");
6 голосов
/ 17 сентября 2016

Прекрасный Java 8-лайнер для людей в будущем:

String[] array = Stream.of(charArray).toArray(String[]::new);
2 голосов
/ 13 июля 2011

Я сделал следующий тест, чтобы проверить предположение Эмиама:

public static void main(String[] args) {
    String str = "abcdef";

    String [] array = str.split("");
}

Работает, но добавляет пустую строку в позицию 0 массива. Таким образом, массив имеет длину 7 символов и является {"", "a", "b", "c", "d", "e", "f"}.

Я сделал этот тест с Java SE 1.6.

1 голос
/ 13 июля 2011

Грубая сила:

String input = "yourstring";
int len = input.length();
String [] result = new String[len];

for(int i = 0; i < len ; i ++ ){
    result[i] = input.substring(i,i+1);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...