@Override public K firstKey() { readCount++; return map.firstKey(); }
@Override public K firstKey() { return map.firstKey(); }
protected K getFirstLast(boolean first) { Object k, k1, k2; try { if (first) k1 = buffer.firstKey(); else k1 = buffer.lastKey(); } catch (NoSuchElementException e) { k1 = null; } if (first) k2 = map.firstKey(); else k2 = map.lastKey(); if (k1 == null) k = k2; else if (k2 == null) k = k1; else { if (first) k = getKeyType().compare(k1, k2) < 0 ? k1 : k2; else k = getKeyType().compare(k1, k2) < 0 ? k2 : k1; } return (K) k; }