Java中Map和List組合使用的例子
使用Java很方便的一條就是Java封裝了很多方便使用的Map和List。
這是我在開發過程中遇到的問題,通過傳入的字串封裝成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; }
相關推薦
Java中Map和List組合使用的例子
使用Java很方便的一條就是Java封裝了很多方便使用的Map和List。 這是我在開發過程中遇到的問題,通過傳入的字串封裝成List<Map<String, String>>格式,然後進行想要的操作,奉上程式碼! /* 輸入引數: * [{"
C++ 中map和list組合使用
一、功能需求1)既能根據鍵值快速查詢元素,同時又能根據元素插入順序pop出來該元素,該怎麼實現該容器?二、程式碼實現把map和list容器組合使用,封裝成一個全新的容器,以實現上述功能。程式碼如下://MapListUnion.h; #include <map>
java中Map和List初始化的兩種方法
第一種方法(常用方法): //初始化List List<string> list = new ArrayList</string><string>
JAVA中MAP轉LIST
new pub values pac exc except gpo x11 toarray @Test public void testMap2List() throws Exception{ Map<String, String> map = new
java中map和表單字串相互轉換
一、需求 serialnum=123456&data=357c0a04f&enable=true&key=b5b806d0dc9 帶有&分割的字串,轉化為map的key、value型別儲存,反之也行。 二、程式碼 import java.util.
Java中Map和Set容器如何存物件的
之前看到過這樣一個問題,大概是:能否把一個物件(自定義,沒有任何方法)的兩個例項同時存放到同一個Set中去? 當時很懵,但是這幾天偶然看了Set和Map的原始碼就比較明瞭了。這裡總結一下。 首先,大體上為了儲存,有通過樹來存資料的,也有通過雜湊(has
java中Map和Set的底層分析
1.HashSet底層是使用HashMap實現的。當使用add方法將物件新增到Set當中時,實際上是將該物件作為底層所維護的Map物件的key,而value則都是同一個Object物件(該物件我們用不上);其他的都是通過定義的HashMap物件實現的。 2.HashMap
Java中Map和Set之間的關係(及Map.Entry)
1、通過查詢API文件: 2、Map.Entry是一個介面,所以不能直接例項化。 3、Map.entrySet( )返回的是一個collection集合,並且,這個collection中的元素是Map.Entry型別,如下圖所示: 4、 Map是Java中的
Java中Set、List、Map、foreach簡單例子
package com.cn.forecah; import java.util.ArrayList; import java.util.HashMap; import java.util.HashS
Java中Map, List, Set和Queue的區別和使用場景
1. Java集合類基本概念 在程式設計中,常常需要集中存放多個數據。從傳統意義上講,陣列是我們的一個很好的選擇,前提是我們事先已經明確知道我們將要儲存的物件的數量。一旦在陣列初始化時指定了這個陣列長度,這個陣列長度就是不可變的,如果我們需要儲存一個可以動態增長的資
Java中map中值按照key鍵和value值分別排序
參考:https://www.cnblogs.com/zhujiabin/p/6164826.html 1. 按照key排序,可以藉助有序集合TreeMap實現,如下: @Test public void sortByMapKey() { Map<String,Str
Java中 map.values轉換為list或者string[]
1 2 3 4 5 6 7 8
Java 中Timer和TimerTask 定時器和定時任務使用的例子
這兩個類使用起來非常方便,可以完成我們對定時器的絕大多數需求 Timer類是用來執行任務的類,它接受一個TimerTask做引數 Timer有兩種執行任務的模式,最常用的是schedule,它可以以兩種方式執行任務:1:在某個時間(Data),2:在某個固定的時間之後(i
java中checked和unchecked 異常處理的例子
有兩種型別的異常:一種是checked異常一種是unchecked異常,在這篇文章中我們將利用例項來學習這兩種異常,checked的異常和unchecked異常最大的區別就是checked去唱是在編譯時檢查的而unchecked異常是在執行時檢查的。 什麼是checked異
java中Map,List與Set的區別
Map 是一種把鍵物件和值物件對映的集合,它的每一個元素都包含一對鍵物件和值物件。 Map沒有繼承於Collection介面 從Map集合中檢索元素時,只要給出鍵物件,就會返回對應的值物件。 Map 的常用方法: 1 新增,刪除操作: [html] view plain copy
java中Map有哪些實現類和使用場景
Java中的map是一個很重要的集合,他是一個介面,下面繼承它實現了多個實現類,這些類各有千秋,各自有個各自的優點和缺點,先上圖。 map的主要特點是鍵值對的形式,一一對應,且一個key只對應1個value。其常用的map實現類主要有HashMap、Hash
Java中Map獲取key和value
Java Map獲取key和value的方法 List<Map<String,Object>> list =new ArrayList<Map<String,
Java中Map集合和Collection集合的區別
Map集合和Collection集合的區別? Map集合:是一種鍵和值的對映關係(雙列集合) Collection集合:單列集合,只能儲存一種型別的元素 間接關係:HashSet依賴於Map介面的子實現類HashMap的
Java中Integer和int比較大小出現的錯誤
最好 裏的 pan 轉換 als 範圍 urn 返回 錯誤 Java在某一處維護著一個常量池,(我記得)在小於128的範圍內,直接用 1 Integer i = 100; 2 int j = 100; 3 return i == j;//true 這裏返回的是true.
java中ArrayList和LinkedList區別
插入 list 新的 查找 arr tro 基於 列表 時間復雜度 ArrayList和LinkedList最主要的區別是基於不同數據結構 ArrayList是基於動態數組的數據結構,LinkedList基於鏈表的數據結構,針對這點,從時間復雜度和空間復雜度來看主要區別: