@Override public V put(int key, V value) { final V result = super.put(key, value); if(result == null) { sortedKeys.add(key); sortedKeys.sort(); } return result; }
@Override public V remove(int key) { final V result = super.remove(key); sortedKeys.removeValue(key); sortedKeys.sort(); return result; }
@Override public void putAll(IntMap<V> map) { super.putAll(map); Keys keys = map.keys(); keys.reset(); while(keys.hasNext) { sortedKeys.add(keys.next()); } sortedKeys.sort(); }