Java Map集合解析
2015-07-13 09:32
357 查看
Map<String, String> map = new HashMap<String, String>(); map.put("user.1.name","user1"); map.put("user.2.age","user2"); map.put("user.3.count","user3"); map.put("bank.1.name","bank1"); map.put("bank.2.price","bank2"); map.put("bank.3.count","bank3"); Map<String,Object> records = new HashMap<String,Object>(); for (Object obj : map.entrySet()) { Map.Entry entry = (Map.Entry)obj; String k = (String)entry.getKey(); String v = (String)entry.getValue(); int i = k.indexOf("."); int j = k.lastIndexOf("."); if(i>0 && j>0){ String tableName = k.substring(0, i); String rowNo = k.substring(i+1, j); String fieldName = k.substring(j+1); Map<String,Object> rows = (Map<String,Object>)records.get(tableName); if(rows==null){ rows = new HashMap<String, Object>(); records.put(tableName, rows); } Map<String, Object> row = (Map<String, Object>)rows.get(rowNo); if(row==null){ row = new HashMap<String, Object>(); rows.put(rowNo, row); } row.put(fieldName, v); } } for (Object obj : records.keySet()) { Map<String,Object> rows = (Map<String,Object>)records.get(obj); for (int i = 1; i < rows.size()+1; i++) { Map<String, Object> row = (Map<String, Object>)rows.get(String.valueOf(i)); for (Object o : row.entrySet()) { Map.Entry entry = (Map.Entry)o; String k = (String)entry.getKey(); String v = (String)entry.getValue(); System.out.println("k :"+k+" v:"+v); } } }
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- Python中map()函数浅析
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树