Map 集合 和 String 字符串相互轉換工具類


 1 package com.skynet.rimp.common.utils.util;
 2 
 3 import java.util.Arrays;
 4 import java.util.HashMap;
 5 import java.util.Map;
 6 import java.util.Set;
 7 
 8 /**
 9  *
10  * map集合和String相互轉換
11  */
12 public class MapStringUtil {
13 
14     /**
15      * map轉換為string
16      * @param map
17      * @return
18      */
19     public  String getMapToString(Map<String,Object> map){
20         Set<String> keySet = map.keySet();
21         //將set集合轉換為數組
22         String[] keyArray = keySet.toArray(new String[keySet.size()]);
23         //給數組排序(升序)
24         Arrays.sort(keyArray);
25         //因為String拼接效率會很低的,所以轉用StringBuilder
26         StringBuilder sb = new StringBuilder();
27         for (int i = 0; i < keyArray.length; i++) {
28             // 參數值為空,則不參與簽名 這個方法trim()是去空格
29             if ((String.valueOf(map.get(keyArray[i]))).trim().length() > 0) {
30                 sb.append(keyArray[i]).append(":").append(String.valueOf(map.get(keyArray[i])).trim());
31             }
32             if(i != keyArray.length-1){
33                 sb.append(",");
34             }
35         }
36         return sb.toString();
37     }
38 
39 
40     /**
41      * string轉為map
42      * @param str
43      * @return
44      */
45     public  Map<String,Object> getStringToMap(String str) {
46         //根據逗號截取字符串數組
47         String[] str1 = str.split(",");
48         //創建Map對象
49         Map<String, Object> map = new HashMap<>();
50         //循環加入map集合
51         for (int i = 0; i < str1.length; i++) {
52             //根據":"截取字符串數組
53             String[] str2 = str1[i].split(":");
54             //str2[0]為KEY,str2[1]為值
55             map.put(str2[0], str2[1]);
56         }
57         return map;
58     }
59 
60 }

可用於map集合與String 字符串相互轉換   制作成工具類


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM