本人初学java,最近学习java泛型,遇到了一些问题,如下:
public class Matrix<T extends Number>{
int cols;
int rows;
Class<T> type;
T[] data = null;
public Matrix(int cols, int rows){
//.....
data = (T[])Array.newInstance(type, cols * rows);
}
public Matrix<T> add(Matrix<T> x){
//.....
T y = data[0] + x.data[0];//这里说T没有定义+运算符,该怎么解决呢?
}
}
Java 泛型
------解决方案--------------------
而且java还不支持运算符重载
------解决方案--------------------
解决方法
Number类有个doubleValue() 方法,多查API!