Kotlin - 如何使用重载减号和 for 循环从 Word 中删除字母?
Kotlin - How to remove Letter from Word with Overloading Minus and for Loops?
编码朋友们好,
我在 Kotlin Challange 上工作了一个星期。
挑战是从单词中删除一个字母,但它必须带有“运算符重载”和“for”循环。
我已经用过滤器方法完成了它并且它有效但没有完成挑战。
我的程序 - 理论上我知道它可以完成但实践是另一个世界
operator fun String.minus(filter1: String): String {
return filter1.minus("l")
}
fun main() {
val wortHW1 = "Hallo"
val wortHW2 = "Hallo World"
for (x in wortHW1) {
x.minus('l')
}
}
我真的希望大家能帮助我,因为我已经卡了一个星期了。
谢谢你的努力
如果我理解正确并给出了要求,这就是您要查找的内容:
fun main() {
val wortHW1 = "Hallo"
val wortHW2 = "Hallo World"
println(wortHW1.minus('l'))
println(wortHW2.minus(' '))
}
operator fun String.minus(letterToRemove: Char): String {
val lettersToKeep: MutableList<Char> = mutableListOf()
for (letter in this) {
if (letter != letterToRemove) {
lettersToKeep.add(letter)
}
}
return lettersToKeep.joinToString("")
}
buildString
函数是编写简洁的字符串操作代码的有用方法。例如:
operator fun String.minus(removedChar: Char): String = buildString {
for (c in this@minus) {
if (c != removedChar) append(c)
}
}
编码朋友们好,
我在 Kotlin Challange 上工作了一个星期。 挑战是从单词中删除一个字母,但它必须带有“运算符重载”和“for”循环。 我已经用过滤器方法完成了它并且它有效但没有完成挑战。
我的程序 - 理论上我知道它可以完成但实践是另一个世界
operator fun String.minus(filter1: String): String {
return filter1.minus("l")
}
fun main() {
val wortHW1 = "Hallo"
val wortHW2 = "Hallo World"
for (x in wortHW1) {
x.minus('l')
}
}
我真的希望大家能帮助我,因为我已经卡了一个星期了。
谢谢你的努力
如果我理解正确并给出了要求,这就是您要查找的内容:
fun main() {
val wortHW1 = "Hallo"
val wortHW2 = "Hallo World"
println(wortHW1.minus('l'))
println(wortHW2.minus(' '))
}
operator fun String.minus(letterToRemove: Char): String {
val lettersToKeep: MutableList<Char> = mutableListOf()
for (letter in this) {
if (letter != letterToRemove) {
lettersToKeep.add(letter)
}
}
return lettersToKeep.joinToString("")
}
buildString
函数是编写简洁的字符串操作代码的有用方法。例如:
operator fun String.minus(removedChar: Char): String = buildString {
for (c in this@minus) {
if (c != removedChar) append(c)
}
}