java.util.HashSet int迭代次序
这个问题在这里已经有了答案:
Docs说
这个类实现了Set接口,由一个哈希表(实际上是一个HashMap实例)支持。 它对集合的迭代次序没有任何保证; 特别是,它不能保证订单会随着时间的推移保持不变。 这个类允许null元素。
去LinkedHashSet
HashSet
不维护广告订单。 你需要的是一个LinkedHashSet
。
HashSet
类不保证您输入数据的顺序。
如果你不把你的List
放在HashSet
,而是继续使用List
你将得到你在其中添加值的顺序。
您可以使用LinkedHashSet
来保留广告订单。
如果你想排序 List
那么你可以使用Collections.sort()
。 (额外的信息,如果你不需要,请忽略)