我知道这段代码应该可以,但是不能。有人知道我在想什么吗?我正在尝试获取二叉树中所有节点的总和。
public int getSum() {
if (this == null) {
return 0;
} else {
return this.value + right.getSum() + left.getSum();
}
}
最佳答案
您的支票this == null
完全没用。但是,您确实需要检查左右节点是否存在。尝试这个:
return this.value + (right != null ? right.getSum() : 0)
+ (left != null ? left.getSum() : 0);