Как преобразовать строку в массив строк в Kotlin? - PullRequest
0 голосов
/ 26 сентября 2019

Я хочу знать, как я могу преобразовать одну строку или объект String в String array, используя kotlin.

Я провел некоторое исследование и нашел этот код JAVA, который, кажется, выполняет то, что мне нужно.

public static void main(String[] args) { 
String word="abc";
        String[] array = new String[word.length()];
        for(int i = 0; i < word.length(); i++)
        {
            array[i] = String.valueOf(word.charAt(i));
        }

        for(String a:array){
            System.out.println(a);
        }
}

Я ожидаю что-то подобное или лучше, чем в Котлине.

Заранее спасибо.

Ответы [ 4 ]

1 голос
/ 26 сентября 2019

Вы можете заполнить массив при его инициализации, используя лямбду, которая принимает индекс в качестве аргумента.

fun main() {
    val word = "abcd"
    val array = Array(word.length) {word[it].toString()}
    array.forEach { println(it) }
}
1 голос
/ 26 сентября 2019

Примерно так:

val str = "abcd"
val array: Array<String> = str.toCharArray().map { it.toString() }.toTypedArray()
0 голосов
/ 26 сентября 2019
fun main() {
    val string = "String"
    val stringList = string.map { it.toString() }
    println(stringList)
}
0 голосов
/ 26 сентября 2019

Вы можете использовать java.text.BreakIterator как из Java, так и из Kotlin-JVM, чтобы перебирать «кластеры графем», то есть видимые пользователем «символы».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...