java multivaluemap_凌雪-MultiValueMap(一个key对应多个value)

map的特点是一个Key对应一个Value,MultiValueMap可以实现一个key对应多个value,可以替换Map> 的数据结构。

apache 和  spring 都有提供这个结构:

import org.apache.commons.collections.map.MultiValueMap;

import java.util.Collection;

public class TestMain

{

public static void main(String[] args) throws IOException

{

MultiValueMap mailMap = new MultiValueMap();

mailMap.put("number", "1");

mailMap.put("number", "30");

mailMap.put("name", "wang");

mailMap.put("card", "12344");

mailMap.put("card", "65432");

Collection mapcoll = null;

mapcoll = mailMap.getCollection("card");

Iterator ii = mapcoll.iterator();

while(ii.hasNext()){

String mailValue = (String) ii.next();

System.out.println(mailValue);

}

}

}

import org.springframework.util.MultiValueMap;

MultiValueMap stringMultiValueMap = new LinkedMultiValueMap<>();

stringMultiValueMap.add("早班 9:00-11:00", "周一");

stringMultiValueMap.add("早班 9:00-11:00", "周二");

stringMultiValueMap.add("中班 13:00-16:00", "周三");

stringMultiValueMap.add("早班 9:00-11:00", "周四");

stringMultiValueMap.add("测试1天2次 09:00 - 12:00", "周五");

stringMultiValueMap.add("测试1天2次 09:00 - 12:00", "周六");

stringMultiValueMap.add("中班 13:00-16:00", "周日");

//打印所有值

Set keySet = stringMultiValueMap.keySet();

for (String key : keySet) {

List values = stringMultiValueMap.get(key);

System.out.println(StringUtils.join(values.toArray()," ")+":"+key);

}

/**

* 用MultiValueMap接收前端提交的Form Data或Query String,可以接收相同的参数名的值到同一个list中

* @author XuJijun

* @param params

* @return

*/

@RequestMapping(value = "multiValueMap")

public Map> test2(@RequestParam MultiValueMap params) {

Map> resultMap = new HashMap<>();

resultMap = params;

return resultMap;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值