恐怕我的解决方案不是很有效:
fun String.mask() = if (isEmpty()) {
this
} else {
this[0] + String((1 until length).map { '*' }.toCharArray())
}
Run Code Online (Sandbox Code Playgroud)
你会怎么做?
一种方法是使用replaceRange进行替换,并repeat构造重复的星号:
fun String.mask() =
if (isEmpty())
""
else
replaceRange(1, length, "*".repeat(length - 1))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1930 次 |
| 最近记录: |