java-8 - 如何从 kotlin 传递供应商?
问题描述
看代码:
CompletableFuture.supplyAsync({
awsBatch.terminateJob(
TerminateJobRequest.builder().jobId(it).reason("terminated").build())}, executor)
Intellij 告诉我:
Type mismatrch:
Required: Supplier<TerminateJobResponse>
Found: () -> TerminateJobResponse
虽然这个编译完美但没有执行器:
CompletableFuture.supplyAsync {
awsBatch.terminateJob(TerminateJobRequest.builder().jobId(it).reason("terminated").build())
}
如何将供应商从 kotlin 传递给 java 8 API?
Offtop(只是我今天的心情)
他们创建了一个CompletableFuture.allOf()
带有返回类型的好方法void
,并创建了这个 - 传递供应商作为第一个参数......我喜欢 java,但所有这些有时让我发疯 - 为什么不看 scala 并创建相同的东西???Kotlin,scala 自动将第二个参数公开为函数,如myFunc("parameter"){"function"}
. 所以现在我创建了一个代码,并且必须花费几个小时来编译一些糖(这应该可以节省我的时间)
:(((
解决方案
你有没有尝试过
CompletableFuture.supplyAsync(Supplier<TerminateJobResponse> {
?
推荐阅读
- javascript - 在不使用打印机的情况下在我的机器上获取 escpos 命令程序的结果
- r - 在数据框中使用带有整数列的 transmute_at
- java - resolveClass 不解析符号引用
- list - 布尔检查特定元素是否是方案中过滤列表的一部分
- android - React Native 运行时错误:未找到本机客户端。Bugsnag React Native 是否安装在您的本机代码项目中?
- django - DRF POST 图像和文本同时
- sql - 当数据不可用于输入表中的类别时,使用 hive 中的 group by 函数来获取聚合计数并获得零作为计数输出
- typescript - TypeORM:多对多自定义列名
- google-apps-script - 如何使用另一张工作表中的新数据更新现有行?
- angular - 使用ngrx store vs @Input 进行通信之间的简单通信