想象一下,我需要创建一个元素集合,其中的顺序可以或不重要.所有我打算做的都是使用迭代器.我注意到大多数同事使用的是ArrayList和LinkedHashSet / HashSet.我的问题是,如果我知道这些元素应该是唯一的,我应该使用一个集合或列表吗?实际上它并没有真正有所作为,但是没有更有效地传达这些元素是独一无二的?
我认为这是大型企业应用程序的一个有趣的问题,原因如下:
1)如果您不能保证代码的整体质量,使用Set可能是危险的.为什么?因为equals()&哈希码可能被错误地覆盖,因此使用Set可能会导致一些非常讨厌的问题.
2)使用列表更能适应未来的变化.如果重复的任何原因成为可能,不需要担心.@H_403_5@
基本上归结为:如果我知道我应该期待独特的元素,我应该喜欢在所有情况下设置列表吗?@H_403_5@