如何获取+号之间的所有文本并将它们放入Java中的HashMap中

How to get all texts between the + sign and put them inside HashMap in Java

如何获取 + 号之间的所有文本并将它们放入 Java

中的 HashMap 中

如下例所示: 产品 1 + 产品 2 + 产品 3 + 产品 4 + 产品 5

我需要把所有的产品放在一个HashMap中

我假设“product1 + product2 + product3 + product4 + product5”是一个字符串。

您可以使用 CharacterIterator 遍历字符串,只抓取不是“+”或“”的字符 (space),然后当您点击加号或 space 然后将构建的字符串存储在 HashMap 中:

HashMap<String, String> productsHashMap = new HashMap<String, String>();

static void productsToHashMap(String str) {
    
    CharacterIterator it = new StringCharacterIterator(str);
    String product = "";
    
    while (it.current() != CharacterIterator.DONE) {
        if (it.current() != " " && it.current() != "+") {
            product += it.current();
        }
        else {
            this.productsHashMap.put("KEY_YOU_WANT", product);
            product = "";
        }
    }
}

抱歉,如果我有任何语法错误,我已经有一段时间没有完成了 Java。 如果您喜欢以不同的方式进行迭代,还有其他遍历字符串的方法,您可以在此处查看一些方法:https://www.geeksforgeeks.org/iterate-over-the-characters-of-a-string-in-java/