java - 使用泛型类执行基本算术运算

标签 java generics

我想对包装类型(如 IntegerFloat Double ...(不包括 BigDecimalBigInteger)。

我尝试使用泛型类执行如下操作(用于添加)。

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 中。类型系统不够强大,无法表达这种事情。

关于java - 使用泛型类执行基本算术运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14046209/

相关文章:

java - 本地引用和字段引用内存分配

java - JSONException : at jsonData of type java. lang.String 无法转换为 JSONArray

java - 此 URL 不支持 HTTP 方法 POST 在 tomcat 上使用 java httpservlet

java - 尝试避免返回 NULL 时键入安全警告

delphi - 如何防止为泛型类生成重复的代码?

json - Swift 通用函数返回新对象

java - 使用自定义类加载器中的 javax.tools.ToolProvider?

java - 如何在父类(super class)中使用子类方法?

ios - Swift - 动态转换类无条件?

Java通配符通用问题: Compiler assumes different types for same object