Java NavigableMap почему headMap return отличается для одних и тех же методов
Относительно метода Java TreeMap (или интерфейса NavigableMap):
public SortedMap<K,V> headMap(K toKey)
public NavigableMap<K,V> headMap(K toKey, boolean inclusive)
Почему они возвращают разные типы? Я знаю, что SortedMap-это супер для NavigableMap,я просто хочу знать, почему инклюзивный флаг требует другого возврата.
Смотреть на код также не имеет смысла, так как версия без включающего флага просто вызывает другой.
Спасибо.
1 ответ:
Я думаю, что причина-историческая.
TreeMap
само собой иheadMap(K)
датируется Java 1.2, тогда какNavigableMap
и ещеheadMap(K, boolean)
были введены в Java 1.6.