java - Java 中的嵌套集合(包含 String 键、arrayList 值的哈希图列表)
问题描述
我应该在 Java 中嵌套集合吗?
我目前正在做一个项目,我想拥有一堆包含 String 键和 arrayList 值的哈希图。这样,当我创建另一个类的对象并将其添加到集合中时,它将能够使用一些信息,如果它与其中一个哈希映射的键之一匹配,那么它将被存放在关联的 arrayList 中价值。这样,以后可以通过特定哈希映射的正确键访问列表。
这是一个好主意吗?还是太复杂了,如果是这样,有更好的方法吗?
解决方案
当然,有时会筑巢。但在这个经验丰富的开发人员的拙见中,除非你有充分的理由,否则你不应该这样做。很多时候,使用一些代表内部集合的类会更好。
因此,如果您发现自己Map<String,List<Foo>>
问自己这List<Foo
真正代表什么。如果是,Map<String,List<Student>>
那么也许您需要Map<String, Roster>
or Map<String, Team>
。我发现这可以缩短上市时间并减少错误。你问这个问题的事实意味着你认为这也有可能是真的。
推荐阅读
- javascript - 从评估代码访问导入的函数
- android - Kotlin 协程 - 优雅地处理来自挂起函数的错误
- angular - 在 Mac Catalina 上安装 Angular 失败 - Angular % sudo npm install -g @angular/cli
- python - 我的键盘记录器 Python 线程 Thread-25 中的异常
- javascript - 在 puppeteer 中的图像上的内部 css 不会改变其余的内容
- merge - 如何在 tf.keras 中执行 Merge Sequential 获取“应在至少 2 个输入的列表上调用一个 `Concatenate` 层”
- sql - 正则表达式用 sql 捕获模式
- email - Netsuite 电子邮件 > 自定义字段的 IF 声明
- .net - Bamboo 单元测试集成错误:CORBA 连接失败,次要代码为 4000
- mysql - MySQL加入2个表错误的输出..值相乘