在Java中将String拆分为String(包含一些特殊字符)和Integer

时间:2018-11-26 14:34:06

标签: java regex string split

我有两个类似

的字符串

a 101[newline] 111

需要将它们放在HashMap中,其中字符串[newline]和其他字符串'a'作为键,而整数111作为键的值。

  

注意:a和101之间的有效空格。“ [newline]”也应视为字符串。

1 个答案:

答案 0 :(得分:1)

使用正则表达式尝试。我认为这会达到您的目的。

   public static void main(String[] args) {
        String[] s = {"a    101","[newline]      111"};
        Map<String, Integer> map = new HashMap<>();
        for(int i=0;i<s.length;i++) {
            String[] splitedData = s[i].split("\\s+");
            map.put(splitedData[0], Integer.valueOf(splitedData[1].trim()));
        }
        for (Map.Entry<String,Integer> entry : map.entrySet())
            System.out.println("Key = " + entry.getKey() +
                    ", Value = " + entry.getValue());
    }