`"Hello ".split(" ")` 生成一个包含两个项目的数组

问题描述 投票:0回答:1

令人惊讶的是,我没有找到对此的解释。

在 Kotlin 中,

.split
函数通常采用分隔符并用该分隔符分隔字符串,返回结果列表并丢弃分隔符。

但是,请考虑以下事项:

val arr = "Hello ".split(" ")
println("size = ${arr.size}") // size 2
println(arr)                  // [Hello, ]

为什么在上面的例子中,结果列表有两个项目,包括分隔符?

kotlin
1个回答
0
投票

您还将获得通过在该空格上拆分而创建的空字符串。如果您尝试拆分

" hello "
,您会看到数组大小为
3

为了避免这种情况,首先修剪多余的空白,然后然后拆分。

val arr = "Hello ".trim(' ').split(" ")
println("size = ${arr.size}") 
println(arr)                  
© www.soinside.com 2019 - 2024. All rights reserved.