Eri*_*rie 1 java for-loop hashset
我正在尝试编写将使用for循环创建多个HashSet的代码.我试图根据它们的长度存储唯一单词的出现次数.例如,长度为4的单词将出现在HashSet A中,而长度为20的单词将出现在HashSet B中.而不是手动创建16个HashSet,有没有办法让我使用for循环(int i=4; i<21; i++)?谢谢!
HashSet你可以拥有一个,而不是16个不同的Map<Integer, Set<String>>.
因此,在添加时,您可以只测试a key是否已经存在.如果有密钥,只需将该字添加到该Set密钥,否则添加新条目.
那么,这是您需要遵循的步骤: -
length.测试是否Map包含密钥length-Map#containsKey(Object)
如果有length密钥,请获取该Set密钥 - Map#get(Object).并添加word到Set.
length没有key,请创建一个new HashSet,在其中添加当前单词.并Map以当前长度作为关键字添加新条目-Map#put(K, V)