按固定数量的字符分割字符串
有没有一种快速的方法来分割一个字符串由固定的字符数量在Kotlin?
我需要分割这个544A1609B62E
,小写它,加:
在需要和实现这个: 54:4a:16:09:b6:2e
。
这将是什么惯用的方式呢?
在Kotlin 1.2中,你可以这样做:
"544A1609B62E".toLowerCase().chunked(2).joinToString(":")
chunked
函数在Kotlin 1.2中是新的。 它将一个集合分成一定大小的块。
在Kotlin 1.1或更低版本中做这个更麻烦一点。 你可以在这里看到@NSimon发布的问题中的答案: Java:如何用一些字符分割字符串?
另一个尝试在Kotlin,
val sampleString = "544A1609B62E" var i = 0 var sampleBuffer = ""; while(i < sampleString.length - 2) { sampleBuffer = sampleBuffer.plus(sampleString.toLowerCase ().substring(i, i + 2)).plus(":") i += 2 } sampleBuffer = sampleBuffer.plus(sampleString.toLowerCase().substring(i)) Log.e(TAG, sampleBuffer)