为什么TreeMap
类型Map
没有定义方法tailMap
或headMap
.
Map<String, String> map = new TreeMap<>();
map.tailMap(); //cannot resolve method tailMap
Run Code Online (Sandbox Code Playgroud)
使用显式转换它可以工作:
((TreeMap<String, String>) map).tailMap("a");
Run Code Online (Sandbox Code Playgroud)
随着NavigableMap
一切都很好:
NavigableMap<String, String> map1 = new TreeMap<>();
map1.tailMap("a");
Run Code Online (Sandbox Code Playgroud)
如果我是对的,因为界面Map
缺少相应的方法,尽管面对对象map
是类的具体实现TreeMap
,当然确实拥有这样的方法.
只是寻找更详细的解释.
谢谢!