java中List或Set的迭代器顺序

问题描述

集合迭代器的迭代顺序是否固定?

迭代器的迭代顺序是否与其集合(List和Set)的存储顺序相同?

解决方法

列表是有序集合,但集合不是,所以两个问题在列表的情况下都是肯定的,而在集合的情况下则不是。 你可以在java文档中查看

https://docs.oracle.com/javase/8/docs/api/java/util/List.html

有序集合(也称为序列)。此界面的用户可以精确控制每个元素在列表中的插入位置。用户可以通过整数索引(在列表中的位置)访问元素,并在列表中搜索元素。

https://docs.oracle.com/javase/8/docs/api/java/util/Set.html

迭代器迭代器() 返回此集合中元素的迭代器。元素没有特定的顺序返回(除非这个集合是某个提供保证的类的实例)。