有关JDK源码中一些元素类型在方法实现方面的效率问题请大牛们指点迷津一下,谢谢!?
/** * Returns the entry associated with the specified key in the * HashMap. Returns null if the HashMap contains no mapping * for the key. */ final Entry\u0026lt;K,V\u0026gt; getEntry(Object key) { if (size == 0) { return null; } int hash = (key == null) ? 0 : hash(key); for (Entry\u0026lt;K,V\u0026gt; e = table; e != null; e = e.next) { Object k; if (e.hash == hash \u0026amp;\u0026amp; ((k = e.key) == key || (key != null \u0026amp;\u0026amp; key.equals(k)))) return e; } return null; }
这是HashMap的get方法,你说的一个一个比较是指的那个for循环吗?哦,我真的懒得给你解释,请google hashmap的实现原理。。。。如果不是,请贴出具体的代码来。。。
■网友
哦?不一个一个对比那怎么取?反正我想不出更好的办法。迭代器之于手写迭代,前者自然比后者方便快捷,后者优化得当自然比前者性能更优。
■网友
map是抽象类吧。用的时候都是用它的之类,如hashmap什么的
■网友
你所说的“Map的实现类”是指AbstractMap?基本上这个抽象类实现的方法没有哪个具体类直接使用。
推荐阅读
- 过节■江苏省委省政府办公厅下发关于做好2021年元旦春节期间有关工作的通知
- 孩子|别忽视小孩只早晨咳怎么回事?或许和这几点有关
- 徐冬冬|徐冬冬暴瘦12斤围度缩水,曾患上暴食症,身材变化和前男友有关
- 疾病|为何身体强壮的人会突然得大病,体弱的人却能长寿?与什么有关?
- 广州白云警方通报巡逻车辆悬挂假牌视频:对有关人员依法依规进行处理
- 道路上的“职业拍客”该管吗?有关专家和部门回应
- 委员会委员|江苏省十三届人大常委会第十九次会议通过有关人事任免名单
- 请问中国民生银行暑假实习合肥支行咋样岗位、待遇都没说。我是计算机专业的不知道是不是和计算机有关
- 鸡汤|老感觉手脚冰冷?别老觉得是小事,或与这3种疾病有关
- 女孩眼睛痒竟是睫毛根长螨虫 医生:或与化妆及不良作息有关