数组列表检索顺序

2022-09-02 19:27:51

我有一个java,我向其中添加了5个对象。ArrayList

如果我循环访问列表并打印出来,则循环访问列表并再次打印出来。

这两种情况下的检索顺序会相同吗?(我知道它可能与广告顺序不同)


答案 1

是的,假设您没有修改中间的列表。从 http://docs.oracle.com/javase/6/docs/api/java/util/List.html

迭 代

Iterator<E> iterator()

按正确的顺序返回对此列表中的元素的迭代器。

也许有点模糊,但在该页面的其他部分中,定义了这个术语:

正确的顺序(从第一个元素到最后一个元素)


答案 2

(我知道它可能与广告顺序不同)

不,它不会。的合约要求顺序与迭代顺序相同,因为在末尾插入,并生成一个按顺序从开始到结束迭代的迭代器。Listaddadditerator

Set不需要这个,所以你可能会混淆迭代顺序的合约和关于迭代顺序。SetList

来自 Javadoc

Iterator<E> iterator()

按正确的顺序返回对此列表中的元素的迭代器。


推荐