Java программирование
159 subscribers
171 photos
16 videos
73 links
Java программирование

Если во только начинаете изучение java, то этот канал для вас.
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Кто такая Java? Никогда о ней не слышал...
Какими свойствами обладает порождаемое equals() отношение эквивалентности?

Рефлексивность: для любой ссылки на значение x, x.equals(x) вернет true;

Симметричность: для любых ссылок на значения x и y, x.equals(y) должно вернуть true, тогда и только тогда, когда y.equals(x) возвращает true.

Транзитивность: для любых ссылок на значения x, y и z, если x.equals(y) и y.equals(z) возвращают true, тогда и x.equals(z) вернёт true;

Непротиворечивость: для любых ссылок на значения х и у, если несколько раз вызвать х.equals(y), постоянно будет возвращаться значение true либо постоянно будет возвращаться значение false при условии, что никакая информация, используемая при сравнении объектов, не поменялась.

Для любой ненулевой ссылки на значение х выражение х.equals(null) должно возвращать false.

👉👆
Если вы сможете прочитать этот код...
В чем секрет успешного разработчика? В умении не только писать код, но и мыслить алгоритмами.

Именно на этом построено обучение на Хекслете. Мы не сторонники подхода «повтори за учителем». Вы будете не просто писать код, а научитесь самостоятельно находить лучшие решения и сформируете инженерное мышление.

На профессии «Django Python-разработчик» вы:

✔️ Научитесь работать с сетевыми запросами.
✔️ Овладеете навыком проектирования архитектуры приложений.
✔️ Освоите самый популярный веб-фреймворк Django.
✔️ Подготовите 4 проекта для портфолио на GitHub.
✔️ Решите 150 тестовых заданий от наших партнёров.

Хотите узнать, подойдет ли вам обучение? Тогда переходите на сайт по ссылке выше и сделайте шаг в IT уже сегодня.

🎁 Пройдите первые 10 бесплатных уроков из профессии и получите дополнительно скидку 10%
Это не баг, а фича
Можно ли хранить null в стандартных коллекциях?

Все интерфейсы Collections Framework позволяют своим реализациям самостоятельно решать, поддерживать ли null-значения. Если реализация не может принять null, она выбрасывает NullPointerException или ClassCastException.

Большинство списков (LinkedList, ArrayList) принимают null без проблем. Большинство очередей (Queue и Deque) не хранят null – возвращая из читающего метода null они сообщают пользователю о пустоте коллекции.

Unmodifiable Maps не допускают null-ов совсем. Обычные изменяемые мапы обычно не испытывают трудности со значениями null. А вот с ключами дело обстоит интереснее.

HashMap не может посчитать hash-сумму от null. Но вместо этого для таких ключей просто используется бакет номер 0.

Иногда этот вопрос дается как задача с подвохом про TreeMap. Nullability её ключей зависит от готовности к этому компаратора. Натуральный порядок (который работает для Comparable ключей) не поддерживает null. Раньше в реализации был баг, который позволял положить значение по ключу null в корень дерева без выброса исключения.

Для значений Set-ов действуют те же правила, что для ключей лежащих в основе их Map-ов.

👉👆
С каждым годом востребованность Kafka растет, а работа с этим инструментом входит в топ-10 ключевых навыков IT-специалистов.

Только за последний месяц можно найти больше 3000 вакансий, где требуется знание Кафки.

Уверенно заявляем: каждому backend-специалисту рано или поздно придется столкнуться с Кафкой — поэтому команда Слёрм создала интенсив по Apache Kafka для разработчиков, специально под ваши задачи.

Курс Кафка для разработчиков идеально подойдёт вам, если:

▫️Вы уже владеете языками Java или Go;

▫️Понимаете goroutine, модульность;

▫️Имеете базовые знания ThreadPool.

28 онлайн-уроков с возможностью обучаться из любой точки мира, доступ на 2 года, AMA-сессии со спикерами и закрытый чат с куратором — уменьшите время на рабочие задачи с Кафкой, получив расширенные знания по работе с инструментом!

После курса вы:

▫️Начнете прекрасно разбираться и ориентироваться в терминологии;

▫️Напишете простейшие клиенты, поймёте внутреннюю архитектуру Кафки

▫️Сможете работать со сложными протоколами и наст...