Задачи на коллекции в Java программировании

1. Создать динамический массив

  1. Создать динамический массив, содержащий объекты класса HeavyBox
  2. Класс HeavyBox наследует класс Box и содержит переменную - int weight.
  3. Класс Box содержит переменные double width, double height, double depth.
  4. Распечатать его содержимое используя for each
  5. Изменить вес первого ящика на 1. 
  6. Удалить последний ящик. 
  7. Получить массив содержащий ящики из коллекции тремя способами и вывести на консоль. 
  8. Удалить все ящики.

Решение на Patreon.

2. Создать TreeSet

  1. Создать TreeSet содержащий объекты классы HeavyBox.
  2. Класс HeavyBox наследует класс Box и содержит переменную - int weight.
  3. Класс Box содержит переменные double width, double height, double depth.
  4. HeavyBox должен реализовать интерфейс Comparable, сортировка должна осуществляться по переменной weight.
  5. Распечатать содержимое с помощью for each.

Решение на Patreon.

3. Набор чисел

  1. Пользователь вводит набор чисел в виде одной строки "1, 2, 3, 4, 4, 5, 10,11".
  2. Избавиться от повторяющихся элементов в строке.
  3. Вывести результат на экран.
  4. Используем интерфейс Set.

Решение на Patreon.

4. Методы union() и intersect()

  1. Напишите методы static <T> Set<T> union(Set<T> set1, Set<T> set2) и static <T> Set<T> intersect(Set<T> set1, Set<T> set2), реализующих операции объединения и пересечения множеств.
  2. Протестируйте работу этих методов на предварительно заполненных множествах. 

Решение на Patreon.

5. Создать очередь

  1. Создать очередь, содержащую объекты класса HeavyBox.
  2. Класс HeavyBox наследует класс Box и содержит переменную - int weight.
  3. Класс Box содержит переменные double width, double height, double depth.
  4. Используем класс ArrayDeque.
  5. Поместить объекты в очередь с помощью метода offer().
  6. Удалить объекты методом poll().

Решение на Patreon.

6. Разделение коллекции

  1. Создать коллекцию, содержащую объекты класса Box
    public class Box {
        private double width;
        private double height;
        private double depth;
  2. Написать метод, который перебирает элементы коллекции и проверяет ширину коробок.
  3. Если ширина коробки больше 30 см, коробка перемещается в другую коллекцию.
  4. Для перебора элементов, используем итератор.

Решение на Patreon.

7. Создать HashMap

  1. Создайте HashMap, содержащий пары значений  - имя книги и объект книги (класс Book).
  2. Класс Book содержит переменные name, cost, author.
  3. Перебрать и распечатать пары значений - entrySet().
  4. Перебрать и распечатать набор из имен книг - keySet().
  5. Перебрать и распечатать значения книг - values().
  6. Для каждого перебора создать свой метод.

Решение на Patreon.

8. Студенты

  1. Создать класс Student, содержащий следующие характеристики – имя, группа, курс, оценки по предметам.
  2. Создать коллекцию, содержащую объекты класса Student.
  3. Написать метод, который удаляет студентов со средним баллом <3.
  4. Написать метод, который переводит студента на следующий курс, если средний балл>=3.
  5. Напишите метод printStudents(Set<Student> students, int course), который получает список студентов и номер курса. Метод печатает на консоль имена тех студентов, которые обучаются на данном курсе.

Решение на Patreon.

9. Домашние животные

  1. Создайте класс Pet с переменной name и абстрактным методом makeNoise().
  2. Создать наследников класса Pet - Cat, Dog, Parrot. Каждый класс реализует свой вариант метода makeNoise().
  3. Создайте отображение из домашних животных, где в качестве ключа выступает имя животного, а в качестве значения класс Pet.
  4. Добавьте в отображение разных животных.
  5. Создайте метод выводящий на консоль все ключи отображения.
  6. Создайте метод вызывающий метод makeNoise() для каждого животного.

Решение на Patreon.

10. Интернет-магазин, часть 6

Часть 1часть 2, часть 3, часть 4, часть 5.

  1. Вместо массивов используйте коллекции.
  2. Товары каталога, должны быть отсортированы. Например, по цене.

Решение на Patreon.

 

При написании программ обращайте внимание на рекомендации по оформлению кода.

Читайте также:
Trustpilot
Trustpilot
Комментарии
FatBoy
Jan 18, 2023
Решение к Задаче №1 https://www.online-java.com/4HbGFs95gw
FatBoy
Jan 20, 2023
Решение к Задаче №6 https://www.online-java.com/itkn4RTs7F
FatBoy
Jan 20, 2023
Решение к Задаче №6 https://www.online-java.com/itkn4RTs7F
FatBoy
Jan 20, 2023
Решение к Задаче №7 https://www.online-java.com/o27FbVmRsy
FatBoy
Jan 22, 2023
Решение к Задаче№2, в задаче не предоставлен класс HeavyBox, так как он есть в Задаче1 https://www.online-java.com/s6fRZEdjtY
FatBoy
Jan 22, 2023
Решение к Задаче №3 https://www.online-java.com/BqU8Qt2N63
FatBoy
Jan 22, 2023
Решение к Задаче №4, ощущение, что правильное решение не такое, буду признателен тому, кто поправит! https://www.online-java.com/r12LAh5X7v
FatBoy
Jan 22, 2023
Решение к Задаче №8 https://www.online-java.com/gXcBnDhu8G