如何声明以Long
,Integer
作为输入的方法签名?
我尝试过关注,但它会出现编译错误:
List<Myobject> fun ( ? extends Number) value){
//impl
}
答案 0 :(得分:3)
public <N extends Number>List<T> xx(N a) {...}
答案 1 :(得分:1)
此方法将任意数字作为输入:
private <N extends Number> void foo(N param) {}
这个也返回相同类型的List
private <N extends Number> List<N> foo(N param) {}
答案 2 :(得分:1)
为什么不简单地将您的参数声明为Number?
List<Myobject> fun (Number value){
//impl
}
答案 3 :(得分:0)
<N extends Number> List<MyObject> fun(N value) { ... }
但在这个用例中,我并没有真正看到使用泛型的好处。我的意思是,为什么你的方法不只是以Number
为参数?
答案 4 :(得分:0)
简单地
private <T extends Number> List<Myobject> fun(T value) {
// do anything with the value
return aMyobjectList;
}