FAQ
Error relating to iterator
If you get this error:
java: bstmap.BSTMap is not abstract and does not override abstract method iterator() in java.lang.Iterable
You need to put the following method in your BSTMap:
public Iterator<K> iterator() {
throw new UnsupportedOperationException();
}
Why does the BSTMap need this? It’s because the Map61B
interface extends Iterable
, which means that anything that implements Map61B
must have the Iterable
methods as well.
Wrong size in treeTest
If you’re erroring on this line in treeTest
:
assertThat(b.size()).isEqualTo(5)
Keep in mind that put
doesn’t always add a new value to the tree. If put
is called with an existing key, it should just update the value, which shouldn’t change the size.