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

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

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

Работать у нас: https://job.proglib.io/

Наши каналы: https://yangx.top/proglibrary/9197
加入频道
Метод compareAndSwap()

Метод compareAndSwap() является одним из основных методов атомарных переменных в Java. Он используется для атомарного сравнения значения переменной с ожидаемым значением и, в случае успеха, записи нового значения в переменную.

Метод compareAndSwap() имеет четыре параметра:

объект — объект, в котором находится переменная.
переменная — переменная, значение которой необходимо сравнить и изменить.
ожидаемое значение — ожидаемое значение переменной.
новое значение — новое значение, которое необходимо записать в переменную.

Если значение переменной совпадает с ожидаемым значением, то метод compareAndSwap() изменяет значение переменной на новое. В противном случае метод compareAndSwap() возвращает значение переменной.

Код выше увеличивает значение переменной counter на 1. Если значение переменной counter в момент вызова compareAndSwap() равно 0, то метод успешно изменяет значение переменной на 1 и возвращает значение true. В противном случае метод возвращает false.
Каким термином лучше всего описать отношение между классами Department и Employee?
Anonymous Quiz
18%
Ассоциация
33%
Композиция
38%
Агрегация
3%
Деградация
9%
Ни один из перечисленных
Правильная ли реализация abstract class?
Anonymous Quiz
39%
Да
61%
Нет
ZipOutputStream

ZipOutputStream — это класс в Java, который позволяет создавать архив Zip, добавлять в него файлы и директории, и сохранять его в файловой системе. Он наследует класс DeflaterOutputStream и реализует интерфейс Closeable.

ZipOutputStream (OutputStream out) — создает объект ZipOutputStream, который будет записывать данные в указанный выходной поток.
Класс java.io.OutputStream

Класс java.io.OutputStream является абстрактным суперклассом для всех классов, представляющих выходной поток байтов в Java. Он входит в состав пакета java.io и отвечает за отправку байтов данных в определенное хранилище (sink).

Основные характеристики:
— Абстрактный класс, поэтому нельзя напрямую создавать его объекты.
— Представляет собой поток последовательных байтов.
— Предоставляет методы для записи байтов в это хранилище.
— Не гарантирует сохранения порядка байтов при записи.
— Не закрывает автоматически хранилище при окончании записи.

Основные методы:
— write(byte b): записывает один байт в поток.
— write(byte[] b): записывает массив байтов в поток.
— write(byte[] b, int off, int len): записывает часть массива байтов в поток.
— flush(): сбрасывает буфер потока, принудительно отправляя данные в хранилище.
— close(): закрывает поток и освобождает ресурсы.
Группировка

Группировка (grouping) — это процесс объединения данных в группы или категории в соответствии с определенным критерием или условием. Группировка является важной операцией при обработке больших объемов данных, поскольку она позволяет легко анализировать и обрабатывать данные, разбивая их на более мелкие подгруппы.

В Java группировка может быть выполнена с использованием метода groupingBy() из класса java.util.stream.Collectors. Метод groupingBy() принимает функцию, которая определяет критерии группировки, и возвращает Map с ключами, соответствующими группам, и значениями, представляющими элементы группы.
Что выведет код сверху?
Anonymous Quiz
10%
5
52%
6
32%
7
6%
Compiler Error
Самые полезные каналы для программистов в одной подборке!

Сохраняйте себе, чтобы не потерять 💾

🔥Для всех

Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы

#️⃣C#

Библиотека шарписта
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel

☁️DevOps

Библиотека devops’а
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования

🐘PHP

Библиотека пхпшника
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты

🐍Python

Библиотека питониста
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты

Java

Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков

👾Data Science

Библиотека Data Science — полезные статьи, новости и обучающие материалы
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту

🦫Go

Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go

🧠C++

Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++

💻Другие профильные каналы

Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика

💼Каналы с вакансиями

Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности

📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈

🤖Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT

Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *

* Организация Meta запрещена на территории РФ
Что выведет следующий код?
Anonymous Quiz
58%
000111222
15%
010120212
27%
012012012
Почему хранить пароль предпочтительнее в char[] или byte[], а не в String?

Ответ: во-первых, строка в виде литерала сразу раскрывает пароль, а также она всегда хранится в string-пуле. Во-вторых, byte[] или char[] можно сбросить после использования и удалить на них все ссылки.