我正试图找出连接前缀到字符串的本地方法,但仅在情况下,它不是。
此代码检查text
变量并使其以"#"开头。
val text = "123456"
val prefix = "#"
val textFormatted = (if (text.startsWith(prefix)) "" else prefix ) + text
我希望在Kotlin中有一个干净的解决方案
另一个选择是使用removePrefix:
val textFormatted = prefix + text.removePrefix(prefix)
否则,您也可以保留if
,但以以下方式编写,以避免额外的括号和额外的连接,并使代码更接近语义:
val textFormatted = if (text.startsWith(prefix)) text else "$prefix$text"
但你的方法也管用。
您可以使用kotlin中的字符串插值,例如:
val text:String = "123456#123456"
val prefix:String = "#"
val interpolation:String = "#${text.removePrefix(prefix)}"