JavaStart
916 subscribers
899 photos
28 videos
609 links
Учи Java вместе с нами!
Наша платформа с курсом - https://javastart.tech
Ютуб с обучающими видео - https://www.youtube.com/@javastart_tech
Download Telegram
Массивы в Java. Часть 9.

Полезные методы для работы с массивами.

Для работы с массивами в Java есть класс java.util.Arrays (arrays на английском и означает “массивы”). В целом с массивами чаще всего проделывают следующие операции:

– заполнение элементами (инициализация);

– извлечение элемента (по номеру);

– сортировка;

– поиск.

Поиск и сортировка массивов — тема отдельная. С одной стороны очень полезно потренироваться и написать несколько алгоритмов поиска и сортировки самостоятельно. С другой стороны, все лучшие способы уже написаны и включены в библиотеки Java, и ими можно законно пользоваться.

Вот три полезных метода этого класса:

1) Сортировка массива

Метод void sort(int[] myArray, int fromIndex, int toIndex)

– сортирует массив целых чисел или его подмассив по возрастанию.

2) Поиск в массиве нужного элемента

int binarySearch(int[] myArray, int fromIndex, int toIndex, int key)

– этот метод ищет элемент key в уже отсортированном массиве myArray или подмассиве, начиная с fromIndex и до toIndex. Если элемент найден, метод возвращает его индекс, если нет - (-fromIndex)-1.

3) Преобразование массива к строке

Метод String toString(int[] myArray)

– преобразовывает массив к строке. Дело в том, что в Java массивы не переопределяют toString(). Это значит, что если вы попытаетесь вывести целый массив (а не по элементам) на экран непосредственно
(System.out.println(myArray)), вы получите имя класса и шестнадцатеричный хэш-код массива (это определено Object.toString()).

Если вы — новичок, вам, возможно, непонятно пояснение к методу toString(). На первом этапе это и не нужно, зато с помощью этого метода упрощается вывод массива. Java позволяет легко выводить массив на экран без использования цикла.

Давайте создадим массив целых чисел, выведем его на экран с помощью toString(), отсортируем с помощью метода sort и найдём в нём какое-то число (4-я картинка).

👩‍💻 Наш практический курс Java–разработчика

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62👨‍💻2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁52💯2👍1
Массивы в Java. Часть 10.

Главное о массивах.

Главные характеристики массива:

– тип помещенных в него данных, имя и длина.

Последнее определяется при инициализации (выделении памяти под массив), первые два параметра определяются при объявлении массива.

– размер массива (количество ячеек) нужно определять в int.

– изменить длину массива после его создания нельзя.

– доступ к элементу массива можно получить по его индексу.

– в массивах, как и везде в Java, элементы нумеруются с нуля.

– после процедуры создания массива он наполнен значениями по умолчанию.

👩‍💻 Наш практический курс Java–разработчика

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42👨‍💻2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁7💯4🔥2🤓1
Коллекции в Java. Часть 1.

Начнем изучать обширную тему, которая нужна как для коммерческой разработки, так и для каждого собеседования на любой уровень.

Что такое коллекции?

Если объяснить простыми словами, то коллекции в Java — это общее название для нескольких похожих друг на друга структур данных. Это сложные типы, в которых может храниться большое количество значений.

Более простой пример структур — массивы: в них могут хранится сколько-то значений.

Но в отличие от массивов коллекции динамические – у них не фиксированная длина. Их размер может меняться – можно добавлять и удалять элементы с помощью методов.

Например, возьмем список чисел: [1, 1, 2, 3, 5]. Весь список — структура данных, в которой хранится 5 элементов. Если к нему можно добавить шестой элемент, допустим 8, — это динамическая структура данных, и она вполне может относиться к коллекциям.

На месте чисел могут быть строки, объекты и другие типы данных. Главное — элементы должны быть однородными, одинакового типа.

Для чего нужны коллекции?

Структуры данных нужны для хранения и получения информации. Но если они статические, в определенный момент пользоваться ими становится неудобно: фиксированное количество элементов не даст расширить структуру. А создавать сразу большой массив неэффективно с точки зрения памяти.

Поэтому существуют динамические структуры. Так как они меняют размер, в них можно хранить практически любое количество информации и не опасаться, что они займут больше места, чем необходимо. Это делает программирование более удобным и ускоряет работу с данными.
Разные варианты коллекций нужны, потому что для различных задач требуются свои особенности хранения и обработки данных. Где-то они должны быть структурированными, а где-то — допустим, уникальными. В одной задаче важно быстро получать элементы, в другой — быстро добавлять. Поэтому реализации разные, и для каждой задачи эффективнее своя.

Это было введение, углубимся в Collection в следующих постах.

👩‍💻 Наш практический курс Java–разработчика

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍432👨‍💻1
Коллекции в Java. Часть 2.

Что такое Java Collections Framework?

Java Collections Framework — это часть JDK, или Java Development Kit, в которой описаны и хранятся коллекции, их устройство и иерархия.

Несмотря на название «фреймворк», это не отдельный инструмент, а одна из важных частей языка Java, точнее, набора инструментов для него. Там содержатся интерфейсы, которые описывают коллекции, и практические реализации.

Интерфейс — это как бы «схема», теоретическое описание поведения объектов. В нем содержатся методы, которые есть у всех его реализаций. А реализация — потомок интерфейса, практическая структура: такой объект можно создать и пользоваться им.

Интерфейс по определению похож на класс, но отличается от него тем, что может хранить только поведение — методы. У него, в отличие от класса, не может быть атрибутов — внутренних переменных, хранящих состояние.

У интерфейсов есть иерархия — более специфические наследуются от более общих. Это значит, что у них есть методы «предка», но есть и свои, специфичные особенности хранения и методы. А реализации — конечные наследники интерфейсов.

Получается наглядная иерархическая схема, где одно вытекает из другого.

Давайте теперь на картинке рассмотрим разные виды интерфейсов и их практические реализации. Попробуйте догадаться, что из представленного является интерфейсами, а что реализациями? А позже мы разберем это более подробно и я все поясню.

👩‍💻 Наш практический курс Java–разработчика

JavaStart. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32🤓2👨‍💻2