gpt4 book ai didi

java - 如何创建混合类型的嵌套 HashMap ?

转载 作者:行者123 更新时间:2023-12-01 14:39:56 26 4
gpt4 key购买 nike

我是 Java 新手,我遇到了一个不知道如何解决的问题。我有一个现有的 HashMap,如下所示:

[
{
linkText=Link Text,
link=http://www.someurl.com,
heading=Asia},
{
linkText=Link Text,
link=http://www.someurl.com,
heading=Asia
}
{
linkText=Link Text,
link=http://www.someurl.com,
heading=Europe
}
{
linkText=Link Text,
link=http://www.someurl.com,
heading=Africa
}
]

我需要将此 HashMap 转换为允许我在 Mustache 中执行此操作的内容:

<ul>
{{#linkGroups}}
<li>{{heading}}
<ul>
{{#links}}
<li><a href="{{link}}">{{linkText}}</a></li>
{{/links}}
</ul>
</li>
{{/linkGroups}}
</ul>

我认为我对允许这种性质的嵌套的现有数据类型没有足够的了解。我尝试过 HashMap、Set 和 Tree,但没有出现。我认为无论我最终使用什么类型都需要让我做这样的事情:

[
{
heading=Asia,
links= {
{
linkText=Link Text,
link=http://www.someurl.com
}
{
linkText=Link Text,
link=http://www.someurl.com
}
}
}
{
heading=Europe,
links= {
{
linkText=Link Text,
link=http://www.someurl.com
}
{
linkText=Link Text,
link=http://www.someurl.com
}
}
}
]

但我可能是错的,并且使对象过于复杂。

任何指示将不胜感激。

最佳答案

假设您创建一个这样的类:

class Link
{
public String text;
public String url;
}

您所描述的结构可以使用:

HashMap<String, List<Link>>

或使用 Guava 库:

ListMultimap<String, Link>

关于java - 如何创建混合类型的嵌套 HashMap ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16070194/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com