gpt4 book ai didi

java - 如何从具有通配符返回类型的泛型函数将返回值分配给对象?

转载 作者:行者123 更新时间:2023-12-04 14:52:13 25 4
gpt4 key购买 nike

这可能是一个非常基本的问题,但我无法弄清楚,我正在尝试从某个库中调用一个函数。该函数的签名如下。

<V> Channel<?,V> create(@Nonnull ChannelSetting setting);

我通过简单地在参数中传递 ChannelSetting 对象来调用此方法,我想将其返回结果分配给 Channel<String, SomeClassType>目的。如果我按如下方式进行,

Channel<String, SomeClassType> result = creatorObj.create(setting);

我收到编译错误类型不匹配。

Type mismatch: Cannot convert from Channel<capture#1-of ?, Object> to Channel<String,SomeClassType>

我不明白如何分配返回类型,我不能离开 因为我只需要特定类型。
谢谢,

最佳答案

方法签名告诉您 create()返回 Channel第一个类型变量是你不知道的。你不能安全地将它分配给,例如,Channel<String, SomeClassType>因为它实际上可能是 Channel<Integer, SomeClassType> ;根据您展示的 API,无法判断。

关于java - 如何从具有通配符返回类型的泛型函数将返回值分配给对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68897480/

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