4 ms·
class Node { // May not be a real situation for a Node class, // but makes a point. Node getLeft() { return left; }
by vmathew 16y ago
class Node {
// May not be a real situation for a Node class,
// but makes a point.
Node getLeft() {
return left;
}
}
// No more checks against NULL. In fact code becomes simpler for
// the user of the library.
node.getLeft().getLeft().getValue();
I don't think the class definition is much too complicated, except for the declaration of the EMPTY field. What we need is a non-mutable, class-wide, default object, not null. We don't need to explicitly declare this object, if the language does that for us and make it accessible through a keyword - say 'default':
if (n.left != default) {
traverse(n.left);
}