gpt4 book ai didi

intellij-idea - intellij中不推荐使用的ReplaceWith在Kotlin中如何工作?

转载 作者:行者123 更新时间:2023-12-04 11:18:38 25 4
gpt4 key购买 nike

我写了这段代码:

@Deprecated("Old stuff", ReplaceWith("test2"))
fun test1(i: Int) {
println("old Int = $i")
}

fun test2(i: Int) {
println("new Int = $i")
}

fun main(args: Array<String>) {
test1(3)
}

由于某种原因,当我按Alt + Enter并单击“用 test2替换”时,方法 test1消失并且没有被替换,我在做什么错?

编辑:

它确实适用于类:
@Deprecated("Old stuff", ReplaceWith("Test2"))
class Test1
class Test2

fun main(args: Array<String>) {
val a = Test1()
}

最佳答案

您需要告诉您如何精确地替换它...虽然我不知道为什么它被完全删除了,但我将向您展示我的意思:

如果您改用以下内容:

@Deprecated("Old stuff", ReplaceWith("test2(i)"))

它将您的 test1(5)调用正确替换为 test2(5)

还要注意,有时如果不清楚应该进行哪个替换,则可能还需要添加软件包名称,例如:
@Deprecated("Old stuff", ReplaceWith("org.example.test2(i)"))
// or just use:
@Deprecated("Old stuff", ReplaceWith("test2(i)", /* here come the imports */ "org.example.test2"))

如果需要,还可以在替换中使用静态值。

关于intellij-idea - intellij中不推荐使用的ReplaceWith在Kotlin中如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52202810/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com