Курсы по программированию

Формула программиста

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.

ООФрукты / Новые игрушки

  • На этом уроке мы попробуем расширить диапазон игрушек в мешке Деда Мороза.
    Сначала попробуем это сделать через обобщение, и окажемся в тупике.
    В конце урока мы найдём простое правильное решение,
    и выясним, почему стоит делать именно так.
    Совет: сначала посмотрите видео полностью, не внося изменений в код.
  • Дата отправки отчёта: 28 ноября 2016 г.
  • Задание выполнено: за 1 час. 00 мин.
  • Чему научился: Ну этот енум. Кто его знает чего там этот дед мороз притащит.
  • Что было сложным: Написать хоть один работающий интерфейс для енума. На это ушло больше часа, не выходит. :-)
  • Комментарии: Это никак не статические переменные, как дни недели, например. Но ради обучения - вот. Особо ничего исправлять не пришлось. В сумке определила какой предмет из набора ожидается.
  • Оценка видео-уроку:
Отчёт от 1232 за ООФрукты / Новые игрушки




Оцени работу

 
Сохранить страницу:

10558. --
Иван Воронин
Иван Воронин
ответить
→  Фомичева Наталья  # Язык Java / FRUITS - Новые игрушки / 2016-11-28 07:37

Enum штука полезная, зря ты так =)


7119. --
Новопашин Владимир
Новопашин Владимир
ответить
→  Фомичева Наталья  # Язык Java / FRUITS - Новые игрушки / 2016-11-28 09:30

Я тоже долго колупался.


1232. --
Фомичева Наталья
Фомичева Наталья
ответить
# ООФрукты / Новые игрушки / 2017-04-15 22:26

Выглядит непривычно, но.
Обобщение...
public enum Fruit {
APPLE(),
/** Lemon*/
LEMON(),
ORANGE(),
MANDARIN();
}
...
public enum Gifts {

CAR(){
Car[] consts() {
return Car.class.getEnumConstants();
}
},
FRUIT() {
Fruit[] consts(){
return Fruit.class.getEnumConstants();
}
};

abstract Enum<?>[] consts();
static public Enum<?> getGift(String line){
for (Gifts g:Gifts.values()){
for (Enum<?> c : g.consts()){
if (c.name().equals(line)){
return c;
}
}
};
return null;
}
...
Enum<?> g =  Gifts.getGift(line);
...
ArrayList<Enum<?>> list = fr.Read();

И конкретный енум
static public Enum<?> getGiftFrom(String line, Enum<?>[] cl){
for (Enum<?> c : cl){
if (c.name().equals(line)){
return c;
}
}
return null;
}
...
g = Gifts.getGiftFrom(line, Fruit.values());



Начинаем практику по языку C#





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.


Научился: Добавил несколько машинок к фруктам =) По хорошему лучше или переименовать енум в Gifts и пусть там будут все подарки которые нужны. Либо хранить подарки в файле и считывать их из него во время запуск =)
=)


Научился: поскольку класс enum является сборником констант, не предполагаемых для корректировки в процессе работы программы, его дублирование и переключение между дубликатами нецелесообразно Верным решением при необходимости изменений, является помещение всех констант в едином перечислении enum