Code Monkey home page Code Monkey logo

oop_hw_4's Introduction

Задание:

Создайте класс Pair, который будет представлять пару значений любого типа. Этот класс должен иметь два обобщенных параметра: T и U, которые будут представлять типы значений первого и второго элементов пары соответственно.

Класс Pair должен иметь следующие методы:

getFirst(): метод для получения первого элемента пары. getSecond(): метод для получения второго элемента пары. setFirst(T first): метод для установки значения первого элемента пары. setSecond(U second): метод для установки значения второго элемента пары.

Пример использования:

Pair<Integer, String> pair = new Pair<>(10, "Hello"); System.out.println("First element: " + pair.getFirst()); System.out.println("Second element: " + pair.getSecond());

pair.setFirst(20); pair.setSecond("World"); System.out.println("Updated first element: " + pair.getFirst()); System.out.println("Updated second element: " + pair.getSecond());

Ожидаемый вывод:

First element: 10 Second element: Hello Updated first element: 20 Updated second element: World В этом примере класс Pair используется для хранения пары значений: целого числа и строки. Методы getFirst() и getSecond() используются для получения значений первого и второго элементов пары соответственно, а методы setFirst() и setSecond() - для изменения значений этих элементов.

Задание 2 по желанию

Создайте обобщенный класс DataContainer, который будет представлять контейнер для хранения данных любого типа. Этот класс должен иметь обобщенный параметр T, представляющий тип данных, которые будут храниться в контейнере.

Класс DataContainer должен иметь следующие методы:

add(T item): метод для добавления элемента в контейнер. get(int index): метод для получения элемента по индексу из контейнера. remove(int index): метод для удаления элемента по индексу из контейнера. getSize(): метод для получения размера контейнера. Реализуйте класс DataContainer таким образом, чтобы он мог хранить элементы внутри себя в виде массива. Предусмотрите динамическое расширение массива при добавлении новых элементов.

Пример использования:

// Создание контейнера для строк DataContainer stringContainer = new DataContainer<>();

// Добавление элементов в контейнер stringContainer.add("Apple"); stringContainer.add("Banana"); stringContainer.add("Orange");

// Получение и удаление элемента по индексу String fruit = stringContainer.get(1); System.out.println("Fruit at index 1: " + fruit); stringContainer.remove(1);

// Вывод размера контейнера System.out.println("Size of container: " + stringContainer.getSize()); Ожидаемый вывод:

Fruit at index 1: Banana Size of container: 2 Дополнительные указания:

При реализации метода add, учитывайте необходимость расширения массива, если его текущий размер недостаточен для добавления нового элемента. При реализации метода remove, удалите элемент из массива и сдвиньте оставшиеся элементы влево для замещения удаленного элемента. Убедитесь, что ваш класс обрабатывает ситуации, когда элементы не найдены или индекс выходит за пределы размера контейнера.

oop_hw_4's People

Contributors

maximcrawn avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.