【List<Map<String,String>】map中替换key值(34)

时间:2025-02-16 10:57:28

map使用方式一:foreach循环遍历
需求:
将dicName替换为:title
将dicValue替换为:value
map返回值增加:key,value

package com.itheima;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;

public class MapTest {
	public static void main(String[] args) {
		
	     List<Map<String, String>> list = new ArrayList<Map<String, String>>();
		  
		 Map map1 = new HashMap();
		 map1.put("dicName", "西安");
		 map1.put("dicValue", "01");
		  
		 Map map2 = new HashMap();
		 map2.put("dicName", "北京");
		 map2.put("dicValue", "02");
		  
		 list.add(map1);
		 list.add(map2);
		
		 for (Map<String, String> map : list) {
			 map.put("title",map.remove("dicName"));
	         map.put("value",map.remove("dicValue"));
	         map.put("key",map.get("value"));
		 }
		 for (Map<String, String> map : list) {
			 System.out.println(map);
		 }
		 System.out.println("----------------------");
	}
}

测试如下:

{title=西安, value=01, key=01}
{title=北京, value=02, key=02}
----------------------

map使用方式二:java8新特性stream流
需求:
将dicName替换为:title
将dicValue替换为:value
map返回值增加:key,value

package com.itheima;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;

public class MapTest {
	public static void main(String[] args) {
		
		List<Map<String, String>> list = new ArrayList<Map<String, String>>();
		  
		 Map map1 = new HashMap();
		 map1.put("dicName", "西安");
		 map1.put("dicValue", "01");
		 Map map2 = new HashMap();
		  
		 map2.put("dicName", "北京");
		 map2.put("dicValue", "02");
		  
		 list.add(map1);
		 list.add(map2);
		
		//利用java8新特性stream流;
		 list.stream().map(x -> {
	           x.put("title", x.remove("dicName"));
		       x.put("value", x.remove("dicValue"));
	           x.put("key", x.get("value"));
	           return x;
	      }).collect(Collectors.toList());
		 for (Map<String, String> map : list) {
			  System.out.println(map);
		 }
	}
}

测试如下:

{title=西安, value=01, key=01}
{title=北京, value=02, key=02}