在項(xiàng)目中,我們經(jīng)常需要把接收到的字符串轉(zhuǎn)換成對(duì)應(yīng)的集合類保存,或者把集合類轉(zhuǎn)換成字符串以方便傳輸,這個(gè)工具類中封裝了幾個(gè)常用的方法,對(duì)于這種轉(zhuǎn)換需求十分方便。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
import java.util.Arrays; import java.util.Collection; import java.util.HashMap; import java.util.HashSet; import java.util.Map; import java.util.Properties; import java.util.Set; import java.util.TreeSet; public class MyStringUtils { /** * 將字符串轉(zhuǎn)換成set集合類 * 分隔符是任意空白字符 */ public static Set<String> parseParameterList(String values) { Set<String> result = new TreeSet<String>(); if (values != null && values.trim().length() > 0 ) { // the spec says the scope is separated by spaces String[] tokens = values.split( "[\\s+]" ); //匹配任意空白字符 result.addAll(Arrays.asList(tokens)); } return result; } /** * 把集合轉(zhuǎn)化成指定形式的字符串 */ public static String formatParameterList(Collection<String> value) { return value == null ? null : StringUtils.collectionToDelimitedString(value, "," ); //指定分隔符 } /** * 從query的字符串中抽取需要的鍵值對(duì)存入map中 * query的形式name=god&password=111&method=up */ public static Map<String, String> extractMap(String query) { Map<String, String> map = new HashMap<String, String>(); Properties properties = StringUtils.splitArrayElementsIntoProperties( StringUtils.delimitedListToStringArray(query, "&" ), "=" ); if (properties != null ) { for (Object key : properties.keySet()) { map.put(key.toString(), properties.get(key).toString()); } } return map; } /** * 比較兩個(gè)集合是否相等 */ public static boolean containsAll(Set<String> target, Set<String> members) { target = new HashSet<String>(target); target.retainAll(members); //取兩個(gè)集合的交集 return target.size() == members.size(); } } |
以上這篇淺談常用字符串與集合類轉(zhuǎn)換的工具類就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持服務(wù)器之家。