Мы продолжаем эксперименты с самым популярным и востребованным шаблоном проектирования: "Итератор". На этом уроке мы напишем ещё один Итератор, который будет перебирать цифры числа.
Дата отправки отчёта:
28 августа 2018 г.
Задание выполнено: за
2 час. 54 мин.
Чему научился:
Создавать свой итератор
Что было сложным:
Не возникло
Оценка видео-уроку:
Оцени работу
Сохранить страницу:
Отчёт оценивали: 17947. Dmitry Sinitsin+16452. Кирилл Шмойлов+117663. Oleksandr+13922. Александр+19014. Николай Денисов+116218. Дмитрий+119525. Александр Балбашов+11. Евгений Волосатов+1459. Сергей Сергеевич+18275. Tekashnik+1791. Валерий Жданов+110494. Алексей В.+19457. Дмитрий+117255. Слава+1Посетитель+17119. Новопашин Владимир+1
Начинаем практику по языку C#
Чтобы стать хорошим программистом — нужно писать программы.
На нашем сайте очень много практических упражнений.
После заполнения формы ты будешь подписан на рассылку
«C# Вебинары и Видеоуроки»,
у тебя появится доступ к видеоурокам и консольным задачам.
Несколько раз в неделю тебе будут приходить письма —
приглашения на вебинары, информация об акциях и скидках,
полезная информация по C#.
Научился: суть итератора остаётся неизменной при всех ухищрениях наследования, перегрузки и удочерения классами классов - проверь наличие следующего элемента для обработки и вторым методом обработай его как требуется не забыв тут же инкрементировать, что бы перейти к следующему элементу
Набросали три класса, один из которых пээсвээм, оставшиеся - находятся в родственной связи (один в другом)
Пр0грам запускает цикл для перебора последовательности и возвращает на экран результат работы
Родственники заняты иным
Диджитс имплементит Итерабл и присваивает намберу значение аргумента на входе в конструкторе
Дочерний ДиджитсИтератор имплементит уже Итератор и содержит базовые методы проверки следующего элемента и второй метод, занятый возвращением остатка от деления на 10 и целочисленным делением для «откусывания» хвоста числа с целью перехода к следующей цифре слева направо
Трудности: сначала запутался, но потом распутался. Сначала не мог понять, почему это всё работает, ведь мы нигде не вызываем методы next() и hasNext(), а также метод, который создаёт итератор и прям уже руки опустились, когда вдруг вспомнил, что мы реализуем встроенный в джаву итератор, которому просто задаём алгоритм, а все вызовы делаются автоматом. А все эти методы мы вызывали в ручную когда реализовывали свои интерфейсы итераторов. Правильно я разобрался хоть ?