将保持插入顺序且没有重复的集合
在Java集合中哪个集合不允许重复并且还保留数据的插入顺序?
LinkedHashSet
根据文档
此实现与HashSet的不同之处在于它维护了一个贯穿其所有条目的双向链表。 此链接列表定义迭代排序,即元素插入集合的顺序(插入顺序)
LinkedHashSet
执行这两个操作
Set set = new LinkedHashSet();
LinkedHashSet
应该适合账单。
Set接口的哈希表和链表实现,具有可预测的迭代顺序 。 此实现与HashSet的不同之处在于它维护了一个贯穿其所有条目的双向链表。 此链接列表定义迭代排序, 即元素插入集合(插入顺序)的顺序 。
您可以为此目的检查LinkedHashSet 。
Set不允许重复值。 LinkedHashSet将保留插入顺序。
Set接口的哈希表和链表实现,具有可预测的迭代顺序。 此实现与HashSet的不同之处在于它维护了一个贯穿其所有条目的双向链表。 此链接列表定义迭代排序,即元素插入集合(插入顺序)的顺序。 请注意,如果将元素重新插入到集合中,则不会影响插入顺序。 (如果s.contains(e)在调用之前立即返回true,则调用s.add(e)时,将元素e重新插入到集合中。)
使用
public class LinkedHashSet extends HashSet
基本上Set不允许重复和
此链接列表定义迭代排序,即元素插入集合的顺序(插入顺序)
http://docs.oracle.com/javase/6/docs/api/java/util/LinkedHashSet.html
您需要一个有序集,由LinkedHashSet实现。