gpt4 book ai didi

java - 在 Kotlin 中引用重载的 Java 方法

转载 作者:行者123 更新时间:2023-12-02 13:43:23 24 4
gpt4 key购买 nike

我想知道如何从 Kotlin 中的 Java 类中引用重载方法。

比如在界面WebClient共有三种get方法:

  HttpRequest<Buffer> get(int port, String host, String requestURI);
HttpRequest<Buffer> get(String host, String requestURI);
...

在 kotlin 中,我想用三个参数引用一个:
val methodReference : WebClient.(port : Int, host: String?, requestUrl: String?) -> HttpRequest<Buffer> = WebClient::get

但我收到以下错误:
None of the following functions can be called with the arguments supplied: 
public abstract operator fun get(p0: Int, p1: String!, p2: String!): HttpRequest<Buffer!>! defined in io.vertx.ext.web.client.WebClient
public abstract operator fun get(p0: String!): HttpRequest<Buffer!>! defined in io.vertx.ext.web.client.WebClient
public abstract operator fun get(p0: String!, p1: String!): HttpRequest<Buffer!>! defined in io.vertx.ext.web.client.WebClient

有任何想法吗?

最佳答案

尝试获取这样的引用:

val methodReference: WebClient.(Int, String, String) -> HttpRequest<Buffer>? = WebClient::get

关于java - 在 Kotlin 中引用重载的 Java 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61381947/

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