[英]How can i replace List<map> map key's value in java
我想在这里重新分配所有迭代的时间值
List<Map<String,Object>> mapList=new ArrayList<Map<String,Object>>();
Map myMap1=new HashMap();
myMap1.put("name", "jai");
myMap1.put("time", Instant.now());
mapList.add(myMap1);
Map myMap2=new HashMap();
myMap2.put("name", "kishan");
myMap2.put("time", Instant.now());
使用remove("time")
返回旧值并放入新键
mapList.forEach(map ->{
map.put("new time",map.remove("time"));
});
我得到了答案
import java.time.Instant;
import java.time.temporal.ChronoUnit;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class HelloWorld {
public static void main(String... args) {
List<Map<String,Object>> mapList=new ArrayList<Map<String,Object>>();
Map<String, Object> myMap1=new HashMap<String, Object>();
myMap1.put("name", "jai");
myMap1.put("time", Instant.now());
mapList.add(myMap1);
Map<String, Object> myMap2=new HashMap<String, Object>();
myMap2.put("name", "kishan");
myMap2.put("time", Instant.now());
mapList.add(myMap2);
System.out.println(mapList);
mapList.forEach(oneMap -> replaceKeyBy(oneMap));
System.out.println(mapList);
}
private static void replaceKeyBy(Map<String, Object> map) {
map.replace("time",Instant.now().plus(10, ChronoUnit.DAYS));
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.