Бонусное задание | 10 лекция | 7 уровень

7 уровень, 10 лекция
Открыта

— Здорово, боец!

— Здравия желаю, товарищ капитан!

— У меня для тебя шикарная новость. Вот тебе задания для закрепления полученных навыков. Выполняй их каждый день, и твои навыки будут расти с неимоверной скоростью. Они специально разработаны для выполнения их в Intellij IDEA.

9
Задача
Java Core,  7 уровень,  10 лекция
Недоступна
Общий список
1. Изменить класс Solution так, чтобы он стал списком. (Необходимо реализовать интерфейс java.util.List). 2. Список Solution должен работать только с целыми числами Long. 3. Воспользуйтесь полем original. 4. Список будет использоваться нитями, поэтому позаботьтесь, чтобы все методы были синхронизиро
9
Задача
Java Core,  7 уровень,  10 лекция
Недоступна
Comparable
Реализуйте интерфейс Comparable<Beach> в классе Beach. Пляжи(Beach) будут использоваться нитями, поэтому позаботьтесь, чтобы все методы были синхронизированы. Реализовать метод compareTo так, чтобы он при сравнении двух пляжей выдавал число, которое показывает что первый пляж лучше(позитивное число)
9
Задача
Java Core,  7 уровень,  10 лекция
Недоступна
Аптека
Реализуй интерфейс Runnable в классах Apteka и Person. Все нити должны работать пока не isStopped. Логика для Apteka: drugsController должен сделать закупку случайного лекарства (getRandomDrug) в количестве (getRandomCount) и подождать 300 мс. Логика для Person: drugsController должен сделать продаж
9
Задача
Java Core,  7 уровень,  10 лекция
Недоступна
Синхронизированные методы
Установить модификатор synchronized только тем методам, которым необходимо. Объект класса Solution будет использоваться нитями.
9
Задача
Java Core,  7 уровень,  10 лекция
Недоступна
Лишняя синхронизация
synchronized существенно замедляет программу, поэтому убери избыточность synchronized внутри методов
9
Задача
Java Core,  7 уровень,  10 лекция
Недоступна
Глажка
И снова быт... Поставьте один synchronized, чтобы diana и igor гладили по очереди, ведь утюг всего один! Подсказка: использовать блокировку на уровне класса.
9
Задача
Java Core,  7 уровень,  10 лекция
Недоступна
ApplicationContext
ApplicationContext будет доступен множеству нитей. Сделать так, чтобы данные не терялись: подумай, какое ключевое слово необходимо поставить и где.
9
Задача
Java Core,  7 уровень,  10 лекция
Недоступна
Банкомат
Разберись, как работает программа Во время тестирования лог содержит следующее: ..... Добавляем 100, на счету 1100 Добавляем 100, на счету 1200 Тратим 1000, на счету 100 Недостаточно денег ..... Создан баг: При списании денег со счета теряются деньги Найти и исправить ошибку
9
Задача
Java Core,  7 уровень,  10 лекция
Недоступна
Транзакционность
Сделать метод joinData транзакционным, т.е. если произошел сбой, то данные не должны быть изменены. 1. Считать с консоли 2 имени файла 2. Считать построчно данные из файлов. Из первого файла - в allLines, из второго - в forRemoveLines В методе joinData: 3. Если список allLines содержит все строки из
9
Задача
Java Core,  7 уровень,  10 лекция
Недоступна
Посчитаем
1. Сделай так, чтобы результат успел посчитаться для всех элементов массива values НЕ используя Thread.sleep в методе main(String[] args). 2. Исправь synchronized блок так, чтобы массив values заполнился значением 1

— Те задания были для духов. Для дедушек я добавил бонусные задания повышенной сложности. Только для старослужащих.

9
Задача
Java Core,  7 уровень,  10 лекция
Недоступна
CRUD
CrUD - Create, Update, Delete Программа запускается с одним из следующих наборов параметров: -c name sex bd -u id name sex bd -d id -i id Значения параметров: name - имя, String sex - пол, "м" или "ж", одна буква bd - дата рождения в следующем формате 15/04/1990 -c - добавляет человека с заданными п
9
Задача
Java Core,  7 уровень,  10 лекция
Недоступна
CRUD 2
CrUD Batch - multiple Creation, Updates, Deletion Программа запускается с одним из следующих наборов параметров: -c name1 sex1 bd1 name2 sex2 bd2 ... -u id1 name1 sex1 bd1 id2 name2 sex2 bd2 ... -d id1 id2 id3 id4 ... -i id1 id2 id3 id4 ... Значения параметров: name - имя, String sex - пол, "м" или
9
Задача
Java Core,  7 уровень,  10 лекция
Недоступна
Ресторан
1.Разберись, что делает программа. Официант почему-то не относит приготовленные блюда назад к столам :( 2.Исправь ошибку. Подсказка: это одна строчка
Комментарии (198)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Роман20 уровень, Москва
4 сентября, 20:15
Никогда не подумал, что так быстро отупел.
Александр26 уровень, Одесса
28 августа, 12:38
Классно ресторан сделан. Тоже так хочу уметь писать программы. ...а повар жадина, сам все сожрал :))))
stefan20 уровень, Санкт-Петербург
21 августа, 15:53
Небольшой вопрос про synchronized какого-либо метода. Если некий метод возвращает объект из коллекции, после того как метод отработал, нить отпустила монитор и что-то дальше делает со ссылкой на объект, допустим, следующая нить воспользовался тем же методом и получил тот же самый объект из коллекции. Получается у нас две нити работают с одной и той же ссылкой и тут могут уже что-то натворить с объектом нехорошего?
darkSide23 уровень
21 августа, 10:39
Неплохо вышло с CRUD 2, но было бы лучше, если бы смог решить и CRUD с первого раза
Ilya Ivanov24 уровень, Казань
15 августа, 09:11
Быстрее бы до Java Colections добраться. Нужно написать интернет-магазин для курсов.
Dzhamil Rakhimov24 уровень, Казань
18 августа, 17:52
Для каких курсов?)
Ilya Ivanov24 уровень, Казань
18 августа, 17:54
Курсы в КФУ
Dzhamil Rakhimov24 уровень, Казань
21 августа, 18:40
чтобы написать интернет магазин мало будет JR. надо поюзать spring boot или spring mvc (на самом деле выбор безгранично огромен, хоть oracle apex) поизучать немного фронта, а так если прям без разницы какая архитектура будет (разделенный фронт с бэком - монолит или миrросервисная архитектура) - загугли видяшки, их полно, за день спокойно напишешь. В иннополисе есть курсы по java можешь на них записаться
Ilya Ivanov24 уровень, Казань
21 августа, 18:54
Я в сентябре заканчиваю курсы, там достаточно информации. Практики не хватает. Я просто руку здесь набиваю на коде. А ты откуда знаешь, что я в Иннополисе живу?)
Dzhamil Rakhimov24 уровень, Казань
25 августа, 08:20
У тебя город Казань стоит) скорее всего, предположил, что знаком с иннополисом, очень хороший старт ап)
kpolishchuk20 уровень
14 августа, 18:47
Почему в задаче "Аптека" не кешируется isStopped (не требуется использование оператора volatile) ?
Ilya Ivanov24 уровень, Казань
15 августа, 09:08
Потому что используются по 1 нити каждого объекта, каждый работает в своем методе run(). И public static boolean isStopped один для всех нитей. В main он становится true для всех нитей. И методы run() завершают работу у всех.
RexyComandante18 уровень, Минск
8 сентября, 09:06
Потому что и читается, и записывается эта переменная только в одной нити - нити main.
kpolishchuk20 уровень
11 сентября, 20:19
и при первом обращении isStopped вроде как должен закешироваться для запущенной нити.
account deleted24 уровень, Россия
17 июля, 10:34
У меня у одного в IDE первые задачи стояли трудные? (со звёздочкой). От страху подумал что тут все такие будут.
Арзамас23 уровень, Самара
22 июля, 09:06
у меня такая же фигня
Vgoose18 уровень, Москва
23 июля, 13:48
О_о я и не заметил что это со звездочкой. Общий принцип был понятен. А вот по объему да, показалось, что для 1й задачки объем великоват.
Valeriy23 уровень, Киев
14 августа, 12:51
спустя месяц у меня такая же ситуация думал если первая задача (CRUD) такая то что же будет в блоке задач "Только для старослужащих")
Самуил Олегович29 уровень, Киев
19 июня, 15:17
А вот ресторан выбесил, наверное надо отдыхать было, а не с налету брать.
Павел Рожкин18 уровень
23 июня, 10:50
Зато писать надо было всего одну строчку)
Николай Хазов23 уровень, Санкт-Петербург
8 июля, 23:14
Задача на самом деле изи. Даже не надо дебаг делать. Просто читать надо долго и внимательно
Самуил Олегович29 уровень, Киев
19 июня, 15:16
1031 ЧМ. Предпоследние две задачи понравились. Напомнили курс по С. Правда пришлось погуглить на предмет работы жабы с параметрами.
Алексей22 уровень, Екатеринбург
19 июня, 06:20
Коллеги, я вам статистику немного улучшил. Одну из задач с 20-го раза решил )))