Files
aston-team-project/docs/tasks/CustomList.md
T

45 lines
1.5 KiB
Markdown

# Техническое задание: кастомный контейнер List
## Задача
Реализовать собственный контейнер для хранения объектов, не используя готовые реализации `List`, `ArrayList` и `LinkedList`.
## Требования
1. Создать интерфейс `MyList<T>`.
2. В интерфейсе определить основные операции:
- `add(...)`;
- `get(...)`;
- `set(...)`;
- `remove(...)`;
- `size()`;
- `isEmpty()`.
3. Создать класс `MyLinkedList<T>`, реализующий `MyList<T>`.
4. Реализовать контейнер на основе собственных узлов `Node<T>`.
5. Контейнер должен поддерживать:
- добавление элемента;
- получение элемента по индексу;
- замену элемента по индексу;
- удаление элемента по индексу;
- получение количества элементов;
- проверку на пустоту.
6. Обработать некорректные индексы с помощью исключений.
7. Контейнер не должен зависеть от класса `Student`, сортировки или пользовательского интерфейса.
## Результат
Должны быть реализованы:
```text
MyList.java
MyLinkedList.java
```