如何以特定数字访问字符串中的字符?
How can I access a char in string in at specific number?
我试过这段代码,但它给我错误。那么如何在 kotlin 中访问字符串中的字符呢?在java中,可以通过charAt()
方法完成。
private fun abc(x: String) {
var i: Int = 0
while (x[i].toString() != "+") {
var y: Char = x[i]
i++
}
}
你能试试这个方法吗?
private fun abc(x: String) {
$p = 1;
do {
$p++
}while (x[p]!= "+")
}
Kotlin 的美妙之处在于您可以通过几种方式实现它,例如。
您可以简单地通过索引访问它:
while (x[i] != '+') {
i++
}
转换为CharArray
val chars: CharArray = x.toCharArray()
while (chars[i] != '+') {
i++
}
你也可以使用惯用的 Kotlin(首选):
forEach
x.forEach { c ->
if (c == '+') return@forEach
}
forEachIndexed 如果你关心索引
x.forEachIndexed { index, c ->
if (c == '+') {
println("index=$index")
return@forEachIndexed
}
}
在这两种情况下,您的角色都是通过 c
访问的
相当于 Javas String.charAt() in Kotlin is String.get()。由于这是作为运算符实现的,因此您可以使用 [index]
而不是 get(index)
。例如
val firstChar: Char = "foo"[0]
或者如果您愿意
val someString: String = "bar"
val firstChar: Char = someString.get(0)
我试过这段代码,但它给我错误。那么如何在 kotlin 中访问字符串中的字符呢?在java中,可以通过charAt()
方法完成。
private fun abc(x: String) {
var i: Int = 0
while (x[i].toString() != "+") {
var y: Char = x[i]
i++
}
}
你能试试这个方法吗?
private fun abc(x: String) {
$p = 1;
do {
$p++
}while (x[p]!= "+")
}
Kotlin 的美妙之处在于您可以通过几种方式实现它,例如。
您可以简单地通过索引访问它:
while (x[i] != '+') { i++ }
转换为
CharArray
val chars: CharArray = x.toCharArray() while (chars[i] != '+') { i++ }
你也可以使用惯用的 Kotlin(首选):
forEach
x.forEach { c -> if (c == '+') return@forEach }
forEachIndexed 如果你关心索引
x.forEachIndexed { index, c -> if (c == '+') { println("index=$index") return@forEachIndexed } }
在这两种情况下,您的角色都是通过 c
相当于 Javas String.charAt() in Kotlin is String.get()。由于这是作为运算符实现的,因此您可以使用 [index]
而不是 get(index)
。例如
val firstChar: Char = "foo"[0]
或者如果您愿意
val someString: String = "bar"
val firstChar: Char = someString.get(0)