从stringlist拆分键值

时间:2016-12-09 11:17:40

标签: java string hashmap

好吧所以我在列表中有字符串,如下所示: - String, boolean 我基本上想要从一个长字符串列表(向下进展)中抓取一大堆这些并将它们放入如下所示的哈希映射中,这样我就可以简单地获取密钥(字符串)并从中获取boolean值键。

hashmap: public HashMap<String, Boolean> keyValues = new HashMap<String, Boolean>();

先谢谢人们。

PS:第一次使用stackoverflow,让我们看看我们如何去!

2 个答案:

答案 0 :(得分:1)

如果你想在一行中这样做:

Pattern.compile("-")
    .splitAsStream(s)
        .map(string -> string.split(","))
            .collect(Collectors.toMap(k -> k[0], v -> Boolean.valueOf(v[1])));

s是这样的字符串:

SIGN_COLOUR, false - SIGN_FORMAT, false - SIGN_ASHOP, false - SIGN_PSHOP, false

答案 1 :(得分:0)

那应该很容易,不是吗?

public static Map<String,Boolean> toMap(List<String> l) {
    HashMap<String,Boolean> m = new HashMap<String,Boolean>();
    l.forEach((s) -> { String[] t=s.split(","); m.put(t[0], new Boolean(t[1])); });
    return m;
}