code: private char checkKey(Object key) {
  	if (key == null) {
  	    throw new NullPointerException("key cannot be null");
  	} else if (!(key instanceof Character)) {
  	    throw new IllegalArgumentException("key must be an Character");
  	}
  	else {
  	    return ((Character)key).charValue();
  	}
      }
docs: Checks that the key is non-{@code null} and is an {@code Integer} object,
  and then returns its {@code int} value.