java零基础入门-Map集合练习(下)
一、教学目标
- 能够使用HashMap集合实现值为双列集合存放。
- 能够使用HashMap集合实现值为单列集合存放。
- 能够使用HashMap集合实现值为基本数据类型存放。
- 能够使用HashMap集合实现值为对象存放。
二、HashMap实现自定义元素存放
3、值存放双列集合
对于值又存放map?map嵌套呀这是,像这种需求,在日常实战中也不是不会遇到,比如定义一个HashMap<String,Map<String,String>>,如果日常中遇到这种类型的map,你们会不会感到空幻,这也太可怕了吧。
演示代码如下:
演示代码运行结果展示:
key为【射手】所对应的值如下:
1:黄忠|2:狄仁杰|3:虞姬|
key为【法师】所对应的值如下:
1:妲己|2:貂蝉|3:甄姬|
key为【战士】所对应的值如下:
1:吕布|2:孙策|3:钟无艳|
看这,演示代码是不是特比的有意思,其实呢,你可以无限嵌套下去,唯有一点,别把自己绕晕了就行哈,因为我在给大家设置演示实例的同时就考虑到了该问题,当你map嵌套map一层又一层,层数大了,你自己都不知道要嵌套那一层,所以我在演示的时候,我是尽量通过取名123这种阿拉伯数字来取分,还有就是对于每一层map你都要做一次循环。
4、值存放单列集合
像这种map值是嵌套单列集合,还是相对比较简单,对比嵌套map而言,在实际开发中也是会经常遇到的,但是对于这种map嵌套单列集合的数据结构,相对而言遍历map是简单些,遍历层数相对值为map嵌套也简单些,像HashMap<String,List<String>>,它只需要遍历一层即可打印出对应键所对应的list值。
演示代码如下:
演示代码运行结果展示:
key为【射手】所对应的值如为:[黄忠]
key为【法师】所对应的值如为:[吕布, 钟无艳]
完整截图可见如下:
以上就是对map的一些玩法,你们也可以开大自己的脑洞, 比如像这样,Map<String, List<Map<String,List<String>>>>,再比如这样:Map<String, Map<String,Map<String,List<UserEntity>>>>等,你们可以尽情的无限玩下去,只有你想不到的就没有做不到的,可以吧?空闲时间,大家可以对于我上述提出的这两数据类型的map进行实现一下啊。
- 点赞
- 收藏
- 关注作者


评论(0)