我是一名 Java 开发人员,尝试过 Kotlin,并发现这两种语言之间存在违反直觉的情况。
考虑 Kotlin 中的给定代码:
"???".split("") # gives ["", "?", "?", "?", ""]
Run Code Online (Sandbox Code Playgroud)
Java 中也是如此:
"???".split("") # gives ["?", "?", "?"]
Run Code Online (Sandbox Code Playgroud)
为什么 Kotlin 在结果数组中产生前导和尾随空格字符串?或者Java总是删除这些空字符串,而我只是没有意识到这一点?
我知道toCharArray()每个 Kotlin 上都有这个方法String,但它仍然不是很直观(也许 Java 开发人员应该放弃 Java 的旧习惯,他们希望在新语言中重用这些习惯?)。