On Wed, 19 Apr 2023 09:43:44 GMT, Nir Lisker <nlis...@openjdk.org> wrote:

>> Stuart Marks has updated the pull request incrementally with three 
>> additional commits since the last revision:
>> 
>>  - Remove unnecessary 'final' from a couple places.
>>  - Clarify ordering of Collection.addAll and Map.putAll; add links to
>>    encounter order.
>>  - Make constructors private for several reverse-ordered views.
>
> src/java.base/share/classes/java/util/SequencedCollection.java line 1:
> 
>> 1: /*
> 
> I wonder if there's a point to mention the relation of reversal to the 
> "enhanced for-each" loop. The loop uses the iterator behind the scenes. That 
> means that a reversed collection will iterate backwards in a loop ("enhanced 
> each-for" loop :) ). A backwards iteration can be achieved by
> 
> for (E element : collection.reversed()) {...}
> 
> For collections that support removal, this construct can also be used to 
> remove elements without the concurrent modification problem of removal during 
> iteration which messes up the indices. See, for example, 
> https://stackoverflow.com/questions/10431981/remove-elements-from-collection-while-iterating.

Can't remove using the iterator since it's hidden, and can't remove directly 
from the collection during iteration without potentially suffering CME. The 
reverse-iteration trick for removal generally only works for index-based 
iteration. Not sure what would be useful to add here.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/7387#discussion_r1171694499

Reply via email to