gpt4 book ai didi

java - 我可以对 Number 基类进行算术运算吗?

转载 作者:IT老高 更新时间:2023-10-28 21:05:37 25 4
gpt4 key购买 nike

我正在尝试在 Java 中创建一个对数字执行操作的泛型类。在下面的例子中,添加如下:

public class Example <T extends Number> {

public T add(T a, T b){
return a + b;
}

}

请原谅我的幼稚,因为我对 Java 泛型还比较陌生。此代码无法编译并出现错误:

The operator + is undefined for the argument type(s) T, T

我认为通过添加“扩展编号”代码可以编译。是否可以使用 Java 或者我必须为每个 Number 类型创建覆盖的方法?

最佳答案

数字没有与之关联的 + 运算符,也不能,因为没有运算符重载。

不过会很好。

基本上,您要求 java 自动装箱 Number 的后代,它恰好包括 Integer、Float 和 Double,可以自动装箱并应用加号运算符,但是,可能有任意数量的 Number 的其他未知后代不能自动装箱,直到运行时才能知道。 (该死的删除)

关于java - 我可以对 Number 基类进行算术运算吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3873215/

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