java linkedhashmap的迭代
linkedhashmap.entryset返回一个set集合虽然linkedhashmap是有序的,但是set集合是无序啊而且迭代的也是linkedhashmap.en...
linkedhashmap.entryset返回一个set集合 虽然linkedhashmap是有序的,但是set集合是无序啊 而且迭代的也是linkedhashmap.entryset返回的set集合 ,为什么迭代出来的结果是有序的 不应该是无序的吗????求大神???
展开
1个回答
2015-11-29 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
关注
展开全部
* LinkedHashMap:是Map接口的哈希表和链接列表实现,具有可预知的迭代顺序。
* 由哈希表保证键的唯一性
* 由链表保证键盘的有序(存储和取出的顺序一致)
* 由哈希表保证键的唯一性
* 由链表保证键盘的有序(存储和取出的顺序一致)
更多追问追答
追问
问题是遍历的是set集合呀 set集合是无序的
追答
Map是接口,需要用LinkedHashMap实现。仔细研究下代码 实际上是LinkedHashMap().entrySet();
public class MapDemo4 {
public static void main(String[] args) {
// 创建集合对象
Map<String, String> map = new LinkedHashMap<String, String>();
// 创建元素并添加到集合
map.put("杨过", "小龙女");
map.put("郭靖", "黄蓉");
map.put("杨康", "穆念慈");
map.put("陈玄风", "梅超风");
// 获取所有键值对对象的集合
Set<Map.Entry<String, String>> set = map.entrySet();
// 遍历键值对对象的集合,得到每一个键值对对象
for (Map.Entry<String, String> me : set) {
// 根据键值对对象获取键和值
String key = me.getKey();
String value = me.getValue();
System.out.println(key + "---" + value);
}
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询