问题描述
map接口中有个方法SetentrySet(),返回类型为什么是个set接口型呀。我认为应该是个set的实现类HashSet
解决方案
解决方案二:
--!干嘛要实现类啊接口一样的啊~
解决方案三:
看看...
解决方案四:
//这是HashMap的源代码中的一段,其实是一个内部类:privatefinalclassEntrySetextendsAbstractSet<Map.Entry<K,V>>{publicIterator<Map.Entry<K,V>>iterator(){returnnewEntryIterator();}publicbooleancontains(Objecto){if(!(oinstanceofMap.Entry))returnfalse;Map.Entry<K,V>e=(Map.Entry<K,V>)o;Entry<K,V>candidate=getEntry(e.getKey());returncandidate!=null&&candidate.equals(e);}publicbooleanremove(Objecto){returnremoveMapping(o)!=null;}publicintsize(){returnsize;}publicvoidclear(){HashMap.this.clear();}}
解决方案五:
为了方便遍历map
解决方案六:
因为map是一个键值对,必须用接口来实现。
时间: 2024-11-08 18:16:24