我想执行基本的算术运算,如加法,减法,乘法和除法,每个操作只使用一个泛型方法,用于包装类型,如Integer,Float,Double …(不包括BigDecimal和BigInteger).
我试图使用泛型类做类似以下的事情(用于添加).
public final class GenericClass<E extends Number> { public E add(E x,E y) { return x + y; // Compile-time error } }
它发出编译时错误,
operator + cannot be applied to E,E
有没有办法使用这样的通用版本来实现这样的操作?
解决方法
不,没有办法做到这一点,否则它将被内置到Java中.类型系统不足以表达这种事情.