gpt4 book ai didi

java - 反转 HashMap

转载 作者:行者123 更新时间:2023-12-02 09:14:07 40 4
gpt4 key购买 nike

我有一个HashMap,它将两个字符串转换为单词,然后将单词添加到 map 中。我拥有它,以便一个键可以指向多个值。现在我想创建一个循环来反转表,以便所有值都指向键。不要为一个指向多个逆值的键而烦恼。

Map<Word,Set<Word>> map = new HashMap<Word,Set<Word>>();

public void add(Word t, Word m) {
if(map.containsKey(t)) {
Set<Word> newM = map.get(t);
newM.add(m);
} else {
Set<Word> newSet = new HashSet<>();
newSet.add(m);
map.put(t, newSet);
}

}

public void add(String t, String m) {
add(new Word(t), new Word(m));
}

public Dictionary inverse() {

}

最佳答案

您面临的主要问题是 map 的常见滥用。就您而言,您实际上没有 map 。您有一些模糊相似的东西,因此您决定使用 map 。你真正拥有的是一组 DictionaryEntry 对象,其中 DidctionaryEntry 看起来像这样:

public class DisctionaryEntry {

private String word;
private Set<String> translations;

}

使用该数据结构并向其添加 addTranslation(String Translation) 方法,我认为,您的问题变得相当明显。

关于java - 反转 HashMap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59142333/

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