0
点赞
收藏
分享

微信扫一扫

Java与Kotlin互调


Java与Kotlin互相调用

KotlinTestMe.kt文件:

object KotlinTestMe {
val sum = {x: Int, y: Int -> x + y}// lamda表达式

}
class MyKotlinClass{
fun hello(){
// 在Kotlin中调用Java
val s = Main.mySum(KotlinTestMe.sum,100,100)
println(s)
}
}

Main.java文件:

import kotlin.jvm.functions.Function2;

public class Main {

public static void main(String[] args) {
// 在Java中调KotlinTestMe对象的sum方法
int sum = KotlinTestMe.INSTANCE.getSum().invoke(5,6);
System.out.println(sum);
// 将KotlinTestMe对象的sum函数作为值传入java的方法中
int s = Main.mySum(KotlinTestMe.INSTANCE.getSum(),10,10);
System.out.println(s);
// 在Java中使用Kotlin的类
MyKotlinClass myKotlinClass = new MyKotlinClass();
myKotlinClass.hello();

}
public static int mySum(Function2 mySum, int x, int y){
return (int)mySum.invoke(x,y);
}
}

谢谢阅读。


举报

相关推荐

Kotlin与Java的抉择。

0 条评论