java - 使用 Hashmap 进行字符串分组

标签 java hashmap grouping

我正在 JSP 中显示一些问题和答案列表。所有问题和答案都是交替显示的。可能存在相同的问题有多个答案。我想将所有问题分组,如果问题出现两次,则应显示相关答案。

例如,现在显示如下:

**测试问题一?

测试答案一

测试问题二?

测试答案二

测试问题一?

测试答案一(再次)**

<小时/>

但我想这样显示:

**测试问题一?

测试答案一

测试答案一(再次)

测试问题二?

测试答案二**

如何做到这一点?

最佳答案

您可以使用 Guava 的HashMultimap如果您想将同一个键与多个值关联:

import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap;

public class HashMultimapTest {

    public static void main(String[] args) {
        Multimap<String,String> map = HashMultimap.create();

        map.put("question 2", "answer 2");
        map.put("question 1", "answer 1");
        map.put("question 3", "answer 3");
        map.put("question 1", "another answer 1");

        System.out.println(map);
        //{question 1=[answer 1, another answer 1], 
        // question 2=[answer 2], 
        //question 3=[answer 3]}
    }
}

关于java - 使用 Hashmap 进行字符串分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4814490/

相关文章:

python - 重新组合或重新组织字典中的键?

java - 我的飞行路线脚本未滚动

java - 如何使用 oAuth2/spring security 限制一个连接/用户

java - Spark Java API,数据集操作?

c++ - 我可以将对象插入 tr1 unordered_map 吗

arrays - 对数组的每个第 n 个元素进行分组

java - 使用 HtmlUnit + Java 的虚拟 Web 浏览器提交

java - 您将使用哪种数据结构 : TreeMap or HashMap? (Java)

java - 在 Java 中迭代 Map 时跳过索引

分组 Python 元组列表