Tôi muốn thực hiện phép tính số học cơ bản như cộng, trừ, nhân và chia chỉ sử dụng một phương pháp chung cho mỗi hoạt động với nhiều loại wrapper như Integer
, Float
, Double
... (trừ BigDecimal
và BigInteger
).Sử dụng một lớp tổng quát để thực hiện phép tính số học cơ bản
Tôi đã cố gắng thực hiện một việc như sau (để thêm) bằng cách sử dụng một lớp chung.
public final class GenericClass<E extends Number> {
public E add(E x, E y) {
return x + y; // Compile-time error
}
}
Nó đưa ra một lỗi thời gian biên dịch,
operator + không thể được áp dụng cho E, E
Có cách nào để sử dụng một phiên bản chung chung như vậy để đạt được các hoạt động đó ?
này nghe có vẻ như overengineering lĩnh vực vấn đề. – Woot4Moo