Java中Map和List组合使用的例子
2016-08-10 15:11
441 查看
使用Java很方便的一条就是Java封装了很多方便使用的Map和List。
这是我在开发过程中遇到的问题,通过传入的字符串封装成List<Map<String, String>>格式,然后进行想要的操作,奉上代码!
这是我在开发过程中遇到的问题,通过传入的字符串封装成List<Map<String, String>>格式,然后进行想要的操作,奉上代码!
/* 输入参数: * [{"index":"SB001","value":"0.380658"},{"indexNo":"SB002","value":"19.801300"}, * {"index":"SB003","value":"1.479825"},{"indexNo":"SB004","value":"15.371400"}, * {"index":"SB005","value":"1.079054"}] * 返回值: * [{"index":"SB001","value":"0.380658","chineseParam":"指标一"},{"indexNo":"SB002","value":"19.801300","chineseParam":"指标二"}, * {"index":"SB003","value":"1.479825","chineseParam":"指标三"},{"indexNo":"SB004","value":"15.371400","chineseParam":"指标四"}, * {"index":"SB005","value":"1.079054","chineseParam":"指标五"}] */ public static List<Map<String, String>> addKeyAndValueInMap(List<Map<String, String>> list) { Map<String, String> keyValue =new HashMap<String,String>(); keyValue.put("SB001", "指标一"); keyValue.put("SB002", "指标二"); keyValue.put("SB003", "指标三"); keyValue.put("SB004", "指标四"); keyValue.put("SB005", "指标五"); keyValue.put("SB006", "指标六"); keyValue.put("SB007", "指标七"); for(Map<String, String> map : list){ String key = map.get("index"); if(keyValue.containsKey(key)){ map.put("chineseParam", keyValue.get(key)); } } return list; } /* 输入参数:list1 * [{"index":"SB001","value":"0.3"},{"indexNo":"SB002","value":"19.0"}, * {"index":"SB003","value":"1.4"},{"indexNo":"SB004","value":"15"}, * {"index":"SB005","value":"1.0"}] * 输入参数:list2 * [{"index":"SB001","value":"0.4"},{"indexNo":"SB002","value":"19.1"}, * {"index":"SB003","value":"1.5"},{"indexNo":"SB004","value":"12"}, * {"index":"SB005","value":"1.0"}] * 返回值: * ["SB001":"1","SB002":"1", * "SB003":"1","SB004":"-1", * "SB005":"1"] */ public static Map<String, String> compareList(List<Map<String, String>> list1,List<Map<String, String>> list2){ Map<String , String> map1 = new HashMap<String , String>() ; Map<String , String> map2 = new HashMap<String , String>() ; for(Map<String , String> a : list1){ map1.put( a.get("index") , a.get("value")) ; } for(Map<String , String> b : list2){ map2.put( b.get("index") , b.get("value")) ; } Map<String , String> map3 = new HashMap<String , String>() ; for(Map.Entry<String, String> a : map1.entrySet()){ String key = a.getKey() ; String value = a.getValue() ; if(map2.containsKey(key)){ map3.put(key , value.compareTo(map2.get(key)) < 0 ? "-1" : "1") ; } } return map3; }
相关文章推荐
- 使用xStream对(Java对象、List集合、Map )到JSON转换、从JSON转换java对象
- 01-java基础加强,eclipse工具使用,快捷键,断点调试,单元测试,jdk5新特性,增强for循环,集合map,list,可变参数,枚举,反射,泛型
- java Set Map使用例子
- Java关于集合(list,set,map)的遍历与增强for循环的使用
- java中集合的使用-set,list,map
- java 容器类使用 Collection,Map,HashMap,hashTable,TreeMap,List,Vector,ArrayList的区别
- Java List Map 初始 赋值例子
- java 容器类使用 Collection,Map,HashMap,hashTable,TreeMap,List,Vector,ArrayList的区别
- 【Java】使用Java对Xml的解析,并把它的所有二级结点放到MAP中,再把所有的MAP放到list之中
- java 后台使用gson 将json字符串转换为List<Map<String,object>> 数组
- java 容器类使用 Collection,Map,HashMap,hashTable,TreeMap,List,Vector,ArrayList的区别
- JAVA基础学习之 Map集合、集合框架工具类Collections,Arrays、可变参数、List和Set集合框架什么时候使用等(4)
- java关于集合(list,set,map)的遍历与增强for循环的使用
- List<Map<String,Object>>使用Java代码遍历以获取String,Object的值
- Java容器类List、ArrayList、Vector及map、HashTable、HashMap的使用与区别
- List<Map<String,Object>>使用Java代码遍历以获取String,Object的值 .
- Java -- 容器使用 Set, List, Map, Queue, Collections
- java中list,map使用泛型和不使用的区别
- Java集合Collection、List、Set、Map使用详解
- [Java 8] (10) 使用Lambda完成函数组合,Map-Reduce以及并行化