Мы продолжаем эксперименты с самым популярным и востребованным шаблоном проектирования: "Итератор". На этом уроке мы напишем ещё один Итератор, который будет перебирать цифры числа.
Дата отправки отчёта:
2 ноября 2018 г.
Задание выполнено: за
14 мин.
Чему научился:
Реализации паттерна итератор для перебора чисел
Слышал это одна из основных составляющих. Успехов в освоении, Андрей!
Отчёт оценивали: 20302. Дмитрий01950. Sergey Potapov+16861. Den Andreevich+110558. Иван Воронин+118626. superGrover+117947. Dmitry Sinitsin+116568. Игорь Тюлькин+118681. alklokov+110494. Алексей В.+120105. Макс Тимашков+19913. vip+11. Евгений Волосатов+13922. Александр+119525. Александр Балбашов+12146. Иван+117606. Виктор+1791. Валерий Жданов+116218. Дмитрий+114981. DimanDOS+1
Начинаем практику по языку C#
Чтобы стать хорошим программистом — нужно писать программы.
На нашем сайте очень много практических упражнений.
После заполнения формы ты будешь подписан на рассылку
«C# Вебинары и Видеоуроки»,
у тебя появится доступ к видеоурокам и консольным задачам.
Несколько раз в неделю тебе будут приходить письма —
приглашения на вебинары, информация об акциях и скидках,
полезная информация по C#.
Научился: суть итератора остаётся неизменной при всех ухищрениях наследования, перегрузки и удочерения классами классов - проверь наличие следующего элемента для обработки и вторым методом обработай его как требуется не забыв тут же инкрементировать, что бы перейти к следующему элементу
Набросали три класса, один из которых пээсвээм, оставшиеся - находятся в родственной связи (один в другом)
Пр0грам запускает цикл для перебора последовательности и возвращает на экран результат работы
Родственники заняты иным
Диджитс имплементит Итерабл и присваивает намберу значение аргумента на входе в конструкторе
Дочерний ДиджитсИтератор имплементит уже Итератор и содержит базовые методы проверки следующего элемента и второй метод, занятый возвращением остатка от деления на 10 и целочисленным делением для «откусывания» хвоста числа с целью перехода к следующей цифре слева направо
Трудности: сначала запутался, но потом распутался. Сначала не мог понять, почему это всё работает, ведь мы нигде не вызываем методы next() и hasNext(), а также метод, который создаёт итератор и прям уже руки опустились, когда вдруг вспомнил, что мы реализуем встроенный в джаву итератор, которому просто задаём алгоритм, а все вызовы делаются автоматом. А все эти методы мы вызывали в ручную когда реализовывали свои интерфейсы итераторов. Правильно я разобрался хоть ?