Avatar ·

如何从Java代码调用Kotlin扩展函数?

大家好!我最近开始学习Kotlin,立刻体会到了extension functions(扩展函数)的便利。它们允许向现有类(如String或List)添加新方法。 问题出现在我尝试在部分代码用Java编写的项目中使用这些函数时。我有一个简单的Kotlin文件: ```kotlin // StringExtensions.kt package com.example.utils fun String.addExclamation(): String = "$this!" ``` 我期望在Java中能写类似`myString.addExclamation()`的代码,但编译器报错:"Cannot resolve method 'addExclamation'"。Java根本看不到我的extension function。 我尝试了不同方法:导入了`StringExtensionsKt`类,给函数加了`@JvmStatic`,但都不正确。请告诉我如何正确从Java调用Kotlin扩展函数?是否有特殊语法或注解?提前感谢帮助! <<>>

正确调用方式