提问人:leonbear 提问时间:5/22/2022 最后编辑:Mark Rotteveelleonbear 更新时间:5/22/2022 访问量:37
我可以通过 Java 界面中指定的泛型来推断方法泛型类型吗?
Can I infer method generic type by generic specified in interface in Java?
问:
基本上我需要实现这样的接口:
// T denotes input type, R for output type
public interface Seg<T, R> {
int put(T);
R get(int key);
}
现在我发现 T 和 R 之间存在功能依赖关系,例如:
T: int --(infer)--> R: String
T: float --(infer)--> R:ByteBuffer
所以现在我想知道有没有可能我只用接口指定 T,用 T 推断 R?
举个例子,下面的代码是我需要的(当然不能遵守):
public interface Seg<T> {
int put(T);
// infer the return type rather than specify in interface
(T==Integer ? String : ByteBufjfer) get(int key);
}
任何一个词都将不胜感激,如果您提出任何系统学习这些事情的线索,我将不胜感激。
答: 暂无答案
评论
R
T
Map<Integer, String>
Map<Float, ByteBuffer>
T==Integer
T