Почему я не могу использовать foreach на Перечислении Java?

Вы могли попытаться сделать цену тяжелее за сценарии для чтения. Это достигается наиболее просто путем преобразования его в изображение, но алгоритм распознавания текста мог все еще обойти это. Если достаточно сценаристов обходит его, Вы могли бы попытаться применить подобные капче вещи к этому изображению, но очевидно за счет пользовательского опыта. Вместо изображения цена могла войти в приложение флэш-памяти.

Поочередно, Вы могли попытаться создать способ "переставить" HTML pf страница в некотором роде, которая не влияет на рендеринг. Я не могу думать о хорошем примере первое, что пришло на ум, но я уверен, что это так или иначе выполнимо.

66
задан cletus 12 August 2009 в 16:48
поделиться

3 ответа

Поскольку Enumeration не расширяет Iterable . Вот пример создания итерируемых перечислений .

Относительно того, почему это интересный вопрос. Это не совсем ваш вопрос, но он проливает на него некоторый свет. Из FAQ по проектированию API коллекций Java :

Почему Iterator не расширяет Enumeration?

Мы просматриваем имена методов для Перечисление неудачное. Они очень долго и очень часто используется. Учитывая, что мы добавляли метод и создавая совершенно новую структуру, мы чувствовал, что было бы глупо не воспользоваться возможностью улучшить имена. Конечно мы могли поддерживать новые и старые имена в Итератор, но не похоже

Это в основном подсказывает мне, что Sun хочет дистанцироваться от Enumeration, который является очень ранней версией Java с довольно подробным синтаксисом.

60
ответ дан 24 November 2019 в 15:02
поделиться

Поскольку перечисление (и большинство классов, производных от этого интерфейса) не реализует Iterable.

Вы можете попробовать написать свой собственный класс-оболочку.

0
ответ дан 24 November 2019 в 15:02
поделиться

Новый стиль цикла ("foreach") работает с массивами и вещами, реализующими интерфейс Iterable .

Он также более аналогичен Iterator , а не Iterable , поэтому для Enumeration не было бы смысла работать с foreach, если бы Iterator не работал (а это не так) т). Перечисление также не рекомендуется в пользу Iterator .

3
ответ дан 24 November 2019 в 15:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: