众所周知,Java提供了Collections API,为我们提供了许多我们可以使用的数据结构。
我想知道是否有一些收集/教程/建议可以解释问题的情况和最佳收集。
示例:LinkedHashMap适用于构建LRU缓存。
答案 0 :(得分:18)
我刚刚遇到过这个问题,但我最近在这里发布了一个Q& A What Java Collection should I use?也回答了这个问题。
答案 1 :(得分:8)
This应该给你一个很好的细分......
答案 2 :(得分:2)
已经提供了足够多的答案,但我想补充一些“应用”领域,其中某些数据结构被用于解决问题
大多数数据结构的列表可以在维基百科here上找到。他们中的大多数都有一个“应用程序”部分,描述了它正在解决的问题域
答案 3 :(得分:2)
如果您在代码中遇到完全相同的情况,只是阅读何时使用什么集合只会对您有所帮助。如果您不理解为什么给定数据结构对问题有好处的根源,您将无法将其应用于您自己的代码。这就是计算机科学在编程中仍然很重要的原因......
所以我的迂回回答是,采用数据结构类或阅读数据结构书籍,并了解它们的工作原理。