— Здорово, боец!
— Здравия желаю, товарищ капитан!
— У меня для тебя шикарная новость. Вот тебе задания для закрепления полученных навыков. Выполняй их каждый день, и твои навыки будут расти с неимоверной скоростью. Они специально разработаны для выполнения их в Intellij IDEA.
18
Задача
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 - добавляет человека с заданными
18
Задача
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 - пол, "м" ил
18
Задача
Java Core, 7 уровень, 10 лекция
Недоступна
Ресторан
1.Разберись, что делает программа. Официант почему-то не относит приготовленные блюда назад к столам :(
2.Исправь ошибку.
Подсказка: это одна строчка
18
Задача
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 так, чтобы он при сравнении двух пляжей выдавал число, которое показывает что первый пляж лучше (положительное чи
18
Задача
Java Core, 7 уровень, 10 лекция
Недоступна
Аптека
Реализуй интерфейс Runnable в классах Apteka и Person.
Все нити должны работать пока не isStopped.
Логика для Apteka: drugsController должен сделать продажу случайного лекарства (getRandomDrug) в количестве (getRandomCount) и подождать 300 мс.
Логика для Person: drugsController должен сделать покупк
5
Задача
Java Core, 7 уровень, 10 лекция
Недоступна
Синхронизированные методы
Установить модификатор synchronized только тем методам, которым необходимо.
Объект класса Solution будет использоваться нитями.
9
Задача
Java Core, 7 уровень, 10 лекция
Недоступна
Лишняя синхронизация
synchronized существенно замедляет программу, поэтому убери избыточность synchronized внутри методов
5
Задача
Java Core, 7 уровень, 10 лекция
Недоступна
Глажка
И снова быт...
Поставьте один synchronized, чтобы diana и igor гладили по очереди, ведь утюг всего один!
Подсказка: использовать блокировку на уровне класса.
5
Задача
Java Core, 7 уровень, 10 лекция
Недоступна
ApplicationContext
ApplicationContext будет доступен множеству нитей.
Сделать так, чтобы данные не терялись: подумай, какое ключевое слово необходимо поставить и где.
— Те задания были для духов. Для дедушек я добавил бонусные задания повышенной сложности. Только для старослужащих.
9
Задача
Java Core, 7 уровень, 10 лекция
Недоступна
Банкомат
Разберись, как работает программа.
Во время тестирования лог содержит следующее:
.....
Добавляем 1000, на счету 1000
Тратим 100, на счету 800
Тратим 100, на счету 800
Тратим 100, на счету 800
Тратим 100, на счету 700
.....
Создан баг: Деньги не правильно списываются со счета.
Найти и исправить ошиб
18
Задача
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