Буквальный ответ таков: apply()
- это , реализованный в терминах ++
, который определен в SortedSet
, и, следовательно, возвращает SortedSet
. ++
затем продолжает использовать +
, который равен , определенный в TreeSet
, так что вы можете привести его к TreeSet
, если это критично (хотя я бы не рекомендовал его, так как зависит от реализации и может изменяться со временем!).
Что вам нужно от TreeSet, чего вы не можете получить от SortedSet?
Я не уверен, каково обоснование проектного решения, хотя похоже, что оно изменилось в 2.8.