我正在通过示例。泛型返回类型不起作用
public interface Visitor<T> {
public void visit(T e);
}
class Sum<T extends Integer> implements Visitor<T> {
private int sum = 0;
@Override
public void visit(T element) {
sum += element;
}
public T value() {
return sum;
}
}
return语句t值()返回的总和给出错误,指出类型不匹配:不能从int到T.转换为什么它是如此,如何来解决这个问题。
不应该是'私人T sum = 0;'? –
并非所有的猫都是狮子,你知道......;-)如果T sum = 0,则为 – Cameron
;我无法将我的元素添加到总和中。我的意思是sum + = element;在第二种方法中将给出错误。对于参数类型T,运算符+ =未定义。 – Curious