1、引言
在程序的执行流程中,经常会遇到获取的数据中某一主键需要更改,用以保证后面的程序可以直接进行解析。
以下案例是模拟创建map类并赋值后,修改其中的key并保证value不变。
package action;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
public class TestMap {
public static void main(String[] args) {
List<HashMap<String, String>> mapList = new ArrayList<HashMap<String, String>>();
HashMap<String, String> map = new HashMap<String, String>();
map.put("extdate", "6");
map.put("extdate1", "2");
map.put("extdate2", "3");
for(Object obj : map.keySet()){
Object value = map.get(obj);
System.out.println(obj+":"+value);
}
mapList.add(map);
for(HashMap<String, String> maps:mapList) {
maps.put("B", maps.remove("extdate"));
}
System.out.println("=======================");
for(HashMap<String, String> mapa:mapList) {
for(Object obj : mapa.keySet()){
Object value = mapa.get(obj);
System.out.println(obj+":"+value);
}
}
}
}
运行结果:
extdate2:3
extdate1:2
extdate:6
=======================
extdate2:3
extdate1:2
B:6
3、结论
从运行结果可以看出,主键:extdate已经更换为B 。 如果在list中有多个map集合,可以通过循环的形式修改。