【发布时间】:2019-02-13 20:56:19
【问题描述】:
我想存储有关文件类型和可能的文件扩展名的信息。 我想要做的是,如果我提供文件扩展名并且此扩展名在列表中,我将为它返回密钥。
例如:
Map<Filetype, List<String>> extensionMapping= new HashMap<>();
extensionMapping.put(Filetype.IMAGE, Arrays.asList("jpg", "jpeg"));
extensionMapping.put(Filetype.WORD, Arrays.asList("doc", "docx"));
extensionMapping.put(Filetype.EXCEL, Arrays.asList("xls", "xlsx", "xlsm"));
extensionMapping.put(Filetype.PPT, Arrays.asList("ppt", "pptx", "pptm"));`
然后我想做这样的事情:
return extensionMapping.get().contains("jpg");
对于字符串“jpg”返回我Filetype.IMAGE。
我应该使用哪个集合?
【问题讨论】:
-
您的扩展似乎每个键都是唯一的,所以我会选择
Map<String, FileType>,其中键是扩展。 -
为什么不
Map <String, Filetype>这是你最常见的查询? -
我觉得现在的也不错`Map
> -
EnumMap是一个更好的容器,适用于密钥为单个Enum类型的情况。
标签: java collections