sjn*_*ngm 2 java generics autoboxing numbers
也许我只是在我的突触中有一个结...
public static <T extends Number> T firstNonZero(T... values) {
for (T value : values) {
if (value.doubleValue() != 0.0) {
return value;
}
}
return (T) 0; // Cannot cast from int to T
}
Run Code Online (Sandbox Code Playgroud)
我想我不需要解释上面的方法.我的问题是我需要"生成"类型的零T.
我怎么做?
那么,怎么样:
public static <T extends Number> T firstNonZero(T... values) {
T zero = null;
for (T value : values) {
if (value.doubleValue() != 0.0) {
return value;
} else {
zero = value;
}
}
return zero;
}
Run Code Online (Sandbox Code Playgroud)
这假设至少有一个值传递给该方法.
| 归档时间: |
|
| 查看次数: |
141 次 |
| 最近记录: |