18.06.2008, 19:06 | #21 |
Moderator
|
На самом деле результат одинаков и так, и так (по крайней мере в 3.0 SP4). Думаю, что класс ListIterator всё сам корректно обрабатывает и не делает казалось бы лишний next для уже удаленного элемента.
Что касается визуального восприятия кода, то добавление else, на мой взгляд, затуманит наглядность, так как глаз привык к шаблону вида: X++: while (iterator.more()) { // bla-bla-bla iterator.next(); } Но в любом случае все претензии по данному фрагменту - авторам "Inside" |
|
19.06.2008, 13:12 | #22 |
Участник
|
Цитата:
В приведенном примере результат, разумеется, одинаков, но с итератором, стоящим на 300, в цикл мы никогда не попадаем. Цитата:
Но в любом случае все претензии по данному фрагменту - авторам "Inside"
Последний раз редактировалось Hyper; 19.06.2008 в 13:15. |
|
17.07.2008, 14:29 | #23 |
Участник
|
Цитата:
X++: public class MyContainerClass extends ContainerClass { ContainerCollection enumerator; } public ContainerCollection getEnumerator() { if (!enumerator) enumerator = new ContainerCollection(this.value()); return enumerator; } |
|