为了账号安全,请及时绑定邮箱和手机立即绑定

HashMap 与 MultivaluedMap

HashMap 与 MultivaluedMap

慕妹3146593 2022-06-08 16:27:59
我最近接触了 Java 中的 Rest API 并遇到了 MultivaluedMap。我没有发现 MultivaluedMapHashMap 或其他类(如TreeMapor )的优势LinkedHashMap。请解释需要 MultivaluedMap 时的场景。
查看完整描述

1 回答

?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

一个MultivaluedMap是:


键值对的映射。每个键可以有零个或多个值。


一个Map是:


将键映射到值的对象。地图不能包含重复的键;每个键最多可以映射到一个值。


因此,MultivaluedMap您可以在 a 中插入与同一键相关的 0、1、2、3 个或更多对象。


在 aMap中,您可以准确插入 1 个与键相关的对象。


这就是区别,如果您需要存储与单个 key 相关的许多值,如果您只有一个值它们是相似的,它会很有用。


一个可能的场景是一个字典,您可以在其中保存所有以字母开头的相关单词。键是 AB C... Z,值是单词。


A -> Acid

     Apple 

     August


B -> Banana

     Boat


C -> Car

     Chain


...


Z -> Zebra

可以这样编码:


MultivaluedMap<String, String> multiMap = new MultivaluedHashMap<>();

multiMap.add("A", "Acid");

multiMap.add("A", "Apple");

multiMap.add("A", "August");

multiMap.add("B", "Banana");

multiMap.add("B", "Boat");

multiMap.add("C", "Car");

multiMap.add("C", "Chain");

multiMap.add("Z", "Zebra");

另一种情况是包含用户购买的所有产品的地图。键是用户 ID,值是产品。


USER1 -> Pizza Margherita

         Pizza Pepperoni


USER2 -> Pizza Margherita


USER3 -> Pizza Margherita

         Pizza Pepperoni

         Pizza Four Cheese


查看完整回答
反对 回复 2022-06-08
  • 1 回答
  • 0 关注
  • 512 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号