相关疑难解决方法(0)

干净的方式读取Kotlin中的所有输入行

进行编码挑战时的常见模式是读取多行输入。假设您事先不知道多少行,那么您要读取直到EOF(readLine返回null)。

另外,作为序言,我不想依赖java.utils。*,因为我使用KotlinNative进行编码,所以没有Scanner。

我想做些类似的事情

val lines = arrayListOf<String>()
for (var line = readLine(); line != null; line = readLine()) {
    lines.add(line)
}
Run Code Online (Sandbox Code Playgroud)

但这显然不是有效的Kotlin。我能想到的最干净的是:

while (true) {
    val line = readLine()
    if (line == null) break
    lines.add(line)
}
Run Code Online (Sandbox Code Playgroud)

这行得通,但似乎不是很惯用。有没有更好的方法可以将所有行读入数组,而无需使用while / break循环?

kotlin kotlin-native

2
推荐指数
2
解决办法
514
查看次数

标签 统计

kotlin ×1

kotlin-native ×1