Библиотека задач по Java | тесты, код, задания
5.77K subscribers
607 photos
3 videos
201 links
Задачи и тесты по Java для тренировки и обучения.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/13eb654a

Для обратной связи: @proglibrary_feeedback_bot
Download Telegram
Что выведет следующий код?
Anonymous Quiz
58%
000111222
15%
010120212
27%
012012012
Почему хранить пароль предпочтительнее в char[] или byte[], а не в String?

Ответ: во-первых, строка в виде литерала сразу раскрывает пароль, а также она всегда хранится в string-пуле. Во-вторых, byte[] или char[] можно сбросить после использования и удалить на них все ссылки.
👍7
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

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

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
👍1
Какие классы из пакета java.util предназначены для работы с датами?
Anonymous Quiz
55%
java.util.Date
5%
java.util.Time
40%
java.util.DateTime
События и слушатели

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

Слушатели (Listeners) в Java — это интерфейсы, которые позволяют регистрировать обработчики событий. Когда происходит событие, соответствующий слушатель вызывает метод обработки события, который реализуется классом, который зарегистрировал слушатель.
👍4
Collections.emptyList()

Collections.emptyList() возвращает пустой неизменяемый список.
Это статический фабричный метод из класса Collections, который возвращает пустой список типа List.

Основные моменты:
— Возвращает пустой список, а не null. Это полезно, чтобы избежать проверок на null.
— Список неизменяемый (immutable). Нельзя добавлять или удалять элементы из него.
— Работает быстрее, чем создание нового списка через new ArrayList().
— Может использоваться как значение по умолчанию или стартовое значение для списка.
👍6
Когда стоит изменять значение поля serialVersionUID?

serialVersionUID нужно изменять при внесении в класс несовместимых изменений, например при удалении какого-либо его атрибута.
🔥5
FileChannel

FileChannel используется для работы с файлами на низкоуровневом вводе-выводе.

Основные возможности класса FileChannel:
— Чтение данных из файла и запись данных в файл.
— Работа с файлом по смещениям. Можно получить текущее смещение в файле, переместить указатель чтения/записи в нужное смещение.
— Маппинг файлов в память. Файл можно отобразить в память и работать с его содержимым как с массивом байтов.
— Блокировка частей файла. Позволяет защитить критические участки файла от одновременной записи.
— Асинхронная работа с файлами.

FileChannel эффективнее потокового ввода-вывода, т. к. избавляет от накладных расходов на создание объектов и буферизацию.
Используется в приложениях, где нужна высокая производительность работы с файлами.
Что имеет более высокий уровень абстракции?
Anonymous Quiz
7%
Класс
23%
Абстрактный класс
70%
Интерфейс
Что такое Stream в Java?

Ответ: Java Stream — способ взаимодействия с потоком данных, который позволяет более удобно и компактно обрабатывать большие данные, а также распараллеливать обработку данных между определенным количеством потоков, что может дать прирост в производительности в использующем функционале.
👍4🔥4
Задача с собеседования

Вам дан целочисленный массив nums. Изначально вы находитесь в первом индексе массива, и каждый элемент массива представляет максимальную длину прыжка в этой позиции. Верните true, если вы можете добраться до последнего индекса, или false в противном случае (ответ на картинке).

Например:

Ввод: [1, 3, 1, 1, 4]
Вывод: true
Объяснение: Переходим на 1 шаг от индекса 0 к 1, затем на 3 шага к последнему индексу.

Ввод: [3, 2, 1, 0, 4]
Вывод: false
👍4
Какой символ является разделителем при указании пути в файловой системе?

Для различных операционных систем символ разделителя различается. Для Windows это \, для Linux — /.

В Java получить разделитель для текущей операционной системы можно через обращение к статическому полю File.separator.
3
Надежный способ проверить, равны ли два значения типа double

Наиболее надежный и точный способ проверить это — использовать Dоuble.соmpare() и сравнить значение с нулем.

Результаты сравнений при помощи Double.compare():
Значение = 0, если d1 == d2;
Значение < 0, если d1 < d2;
Значение > 0, если d1 > d2.
🔥6❤‍🔥1👍1
Узнаем размер файла с помощью Java

Здесь создается объект класса File, указывающий на файл, размер которого нужно узнать.

Затем вызывается метод length(), который возвращает размер файла в байтах. Результат выводится на консоль с помощью метода println().
❤‍🔥8👍4👏1
Как определить, содержит ли массив определенное значение в Java с помощью потоков?

Чтобы проверить, содержит ли массив значений int, double или long значение, используйте IntStream, DoubleStream или LongStream соответственно.
👍15
Аннотация @Entity

Аннотация @Entity используется в Java для обозначения класса, который является сущностью. Сущность — это объект, который представляет собой строку данных в базе данных.

Чтобы класс был объявлен сущностью, необходимо добавить к нему аннотацию @Entity. Аннотация @Entity сообщает фреймворку JPA, что класс Customer является сущностью и должен быть сохранен в базе данных.
👍14🔥2
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

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

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
👍2
Что обозначает ключевое слово transient?

Поля класса, помеченные модификатором transient, не сериализуются.

Обычно в таких полях хранится промежуточное состояние объекта, которое, к примеру, проще вычислить. Другой пример такого поля — ссылка на экземпляр объекта, который не требует сериализации или не может быть сериализован.
🔥8👍1