实际上我并不需要这个功能,只是感兴趣。
使用C
语言,可以在源代码中使用汇编代码。
Kotlin可以吗?
例如,使用inline fun
注释定义@Java
。结果,该函数的所有调用都将被javac
编译的字节码替换。
答案 0 :(得分:1)
否。
Kotlin文件(.kt)只能包含Kotlin代码。您可以创建一个Java文件(.java),并将其与Kotlin代码互换使用。
答案 1 :(得分:1)
原则上,您可以编写一种方法,将Java代码作为字符串,将其包装到一个类中,并使用javax.tools.JavaCompiler
进行编译并将其用作例如
val x = inlineJava[Int]("""
int sum = 0;
int size = 10;
for (int i = 0; i < size; i++) { sum++; }
return sum;
""")
(实际上是练习中留下的inlineJava
)。尽管我必须承认我想不出有充分的理由。