Что выведет код сверху?
Ответ:
Программа не выдаст ошибки компиляции. Поскольку a больше 20, а b больше 25, будет выведена 1. Второй оператор if не будет истинным, так как a не больше 30, поэтому будет выполнен блок else, который выведет 3. Таким образом, на выходе будет 1, а затем 3. Обратите пристальное внимание на операторы if и else if. Если бы вместо второго оператора if был оператор else if, то на выходе была бы только 1.
#код
Ответ:
#код
🤖 Нейронки кодят за вас: 28 AI-сервисов в помощь разработчику
Расскажем о самых полезных новинках, которые помогут написать, отладить и протестировать код, а также ускорят процесс изучения нового стека и подготовку к собеседованию.
🔗 Основной сайт
🔗 Зеркало
Расскажем о самых полезных новинках, которые помогут написать, отладить и протестировать код, а также ускорят процесс изучения нового стека и подготовку к собеседованию.
🔗 Основной сайт
🔗 Зеркало
Дайджест новых полезных статей по разработке, сохраняй себе:
☕️ Сравниваем Hashtable, HashMap и ConcurrentHashMap
☕️ ТОП недооцененных горячих клавиш Intellij IDEA
☕️ Настраиваем память JVM-приложения в Kubernetes
☕️ Как в Java считывать данные из файла в 2023 году
☕️ Забавная статистика о JDK 20
☕️ Еще один путь снизить боль при работе с Java проектами и их документированием
☕️ Про интерфейсы и изолированные классы в Java
☕️ Spring Boot Best Practices для разработчиков
#дайджест
☕️ Сравниваем Hashtable, HashMap и ConcurrentHashMap
☕️ ТОП недооцененных горячих клавиш Intellij IDEA
☕️ Настраиваем память JVM-приложения в Kubernetes
☕️ Как в Java считывать данные из файла в 2023 году
☕️ Забавная статистика о JDK 20
☕️ Еще один путь снизить боль при работе с Java проектами и их документированием
☕️ Про интерфейсы и изолированные классы в Java
☕️ Spring Boot Best Practices для разработчиков
#дайджест
Нужно ли программисту высшее образование?
Anonymous Poll
35%
Да, нужно (работаю программистом, окончил технический ВУЗ)
8%
Не нужно (работаю программистом, не оканчивал технический ВУЗ)
18%
Не нужно (работаю программистом, окончил технический ВУЗ)
10%
Да, нужно (работаю программистом, самоучка/курсы)
14%
Не нужно (работаю программистом, самоучка/курсы)
14%
Другое (напишу в комментариях)
Перечислите примитивные типы данных в Java.
• byte — целые числа в пределах -128 до 127, весит 1 байт;
• short — целые числа в пределах -32768 до 32767, весит 2 байта;
• int — целые числа -2147483648 до 2147483647, весит 4 байта;
• long — целые числа в пределах 9223372036854775808 до 9223372036854775807, весит 8 байтов;
• float — числа с плавающей запятой в пределах -3.4E+38 до 3.4E+38, весит 4 байта;
• double — числа с плавающей запятой в пределах -1.7E+308 до 1.7E+308, весит 8 байтов;
• char — одиночные символы в UTF-16, весит 2 байта;
• boolean значения true/false, весит 1 байт.
#вопросы_с_собеседований
• byte — целые числа в пределах -128 до 127, весит 1 байт;
• short — целые числа в пределах -32768 до 32767, весит 2 байта;
• int — целые числа -2147483648 до 2147483647, весит 4 байта;
• long — целые числа в пределах 9223372036854775808 до 9223372036854775807, весит 8 байтов;
• float — числа с плавающей запятой в пределах -3.4E+38 до 3.4E+38, весит 4 байта;
• double — числа с плавающей запятой в пределах -1.7E+308 до 1.7E+308, весит 8 байтов;
• char — одиночные символы в UTF-16, весит 2 байта;
• boolean значения true/false, весит 1 байт.
#вопросы_с_собеседований
❌ 6 типичных ошибок, которые допускают программисты при составлении резюме
Рассказываем, что не так с резюме большинства программистов и как сделать так, чтобы работодатель обратил на вас внимание.
🔗 Основной сайт
🔗 Зеркало
Рассказываем, что не так с резюме большинства программистов и как сделать так, чтобы работодатель обратил на вас внимание.
🔗 Основной сайт
🔗 Зеркало
LWJGL (Lightweight Java Game Library) — кроссплатформенная игровая библиотека с доступом к возможностям OpenGL, OpenAL и OpenCL. Библиотека позволяет управлять графикой, звуком, игровыми контроллерами разного типа.
Целью создания LWJGL был выход «за флажки» Java-платформы — работа с ресурсами, обычно недоступными джавистам. Библиотека используется в игровых Java-движках и фреймворках, таких как jPCT 3D для Android, LibGDX, Ardor3D.
https://www.lwjgl.org/
Целью создания LWJGL был выход «за флажки» Java-платформы — работа с ресурсами, обычно недоступными джавистам. Библиотека используется в игровых Java-движках и фреймворках, таких как jPCT 3D для Android, LibGDX, Ardor3D.
https://www.lwjgl.org/
Сколько компаний успели поменять за свой рабочий стаж программистом?
Расскажите в комментариях ⬇️
Расскажите в комментариях ⬇️
Метод ensureCapacity
Увеличивает размер внутреннего массива, чтобы в него поместилось количество элементов, переданных в minCapacity. Если массив достаточно вместителен, никакие преобразования не производятся.
Этот метод полезен, когда возникает потребность вместить большое количество элементов в несколько итераций. Например, при создании списка емкость его внутреннего массива — 10. При загрузке данных по сети они обрабатываются асинхронно порциями и результаты помещаются в массив. Если ожидается доставка 10 000 элементов, может быть неэффективно просто добавлять эти данные каждый раз: достаточно будет в начале обработки вызвать метод ensureCapacity(10000) и записывать туда данные по мере необходимости.
#код
Увеличивает размер внутреннего массива, чтобы в него поместилось количество элементов, переданных в minCapacity. Если массив достаточно вместителен, никакие преобразования не производятся.
Этот метод полезен, когда возникает потребность вместить большое количество элементов в несколько итераций. Например, при создании списка емкость его внутреннего массива — 10. При загрузке данных по сети они обрабатываются асинхронно порциями и результаты помещаются в массив. Если ожидается доставка 10 000 элементов, может быть неэффективно просто добавлять эти данные каждый раз: достаточно будет в начале обработки вызвать метод ensureCapacity(10000) и записывать туда данные по мере необходимости.
#код
Подборка полезных статей по Java:
☕️ Дорожная карта web-разработчика Java
☕️ 25 самых используемых регулярных выражений в Java
☕️ 5 особенностей языка Java, о которых вы должны знать
☕️ Пишем элегантный и чистый Java код в 5 этапов
☕️ На сайте Tutorials Point есть раздел с исчерпывающим количеством туториалов по Java. Также там есть отдельный раздел для Java 8
☕️ Java2S — коллекция примеров на все случаи жизни
☕️ Базовый курс по Java со Stepik
#дайджест
☕️ Дорожная карта web-разработчика Java
☕️ 25 самых используемых регулярных выражений в Java
☕️ 5 особенностей языка Java, о которых вы должны знать
☕️ Пишем элегантный и чистый Java код в 5 этапов
☕️ На сайте Tutorials Point есть раздел с исчерпывающим количеством туториалов по Java. Также там есть отдельный раздел для Java 8
☕️ Java2S — коллекция примеров на все случаи жизни
☕️ Базовый курс по Java со Stepik
#дайджест
Извлекаем имя из адреса электронной почты
Метод extractNameFromEmail принимает строку с адресом электронной почты и возвращает подстроку до символа "@" (если символ "@" присутствует в строке) в качестве имени.
#код
Метод extractNameFromEmail принимает строку с адресом электронной почты и возвращает подстроку до символа "@" (если символ "@" присутствует в строке) в качестве имени.
#код
Что такое «поток-демон» (daemon thread)?
Потоками-демонами называются потоки, работающие в фоновом режиме для нашей программы.
В Java процесс завершается тогда, когда завершается последний его поток. Даже если метод main() уже завершился, но еще выполняются порожденные им потоки, система будет ждать их завершения.
Однако это правило не относится к особому виду потоков — демонам. Если завершился последний обычный поток процесса, и остались только потоки-демоны, то они будут принудительно завершены и выполнение процесса закончится. Чаще всего потоки-демоны используются для выполнения фоновых задач, обслуживающих процесс в течение его жизни.
#вопросы_с_собеседований
Потоками-демонами называются потоки, работающие в фоновом режиме для нашей программы.
В Java процесс завершается тогда, когда завершается последний его поток. Даже если метод main() уже завершился, но еще выполняются порожденные им потоки, система будет ждать их завершения.
Однако это правило не относится к особому виду потоков — демонам. Если завершился последний обычный поток процесса, и остались только потоки-демоны, то они будут принудительно завершены и выполнение процесса закончится. Чаще всего потоки-демоны используются для выполнения фоновых задач, обслуживающих процесс в течение его жизни.
#вопросы_с_собеседований
Бинарный поиск в массивах
Допустим, мы хотим вставить новый элемент в отсортированную таблицу. Arrays.binarySearch() возвращает индекс ключа поиска, если он содержится в таблице. В противном случае она возвращает точку вставки, которую мы можем использовать для подсчета индекса для нового ключа: -(insertion point)-1. Более того, метод binarySearch является самым простым и эффективным методом поиска элемента в отсортированном массиве в Java.
Рассмотрим следующий пример. У нас есть таблица ввода с четырьмя элементами, упорядоченными по возрастанию. Мы хотели бы вставить номер 3 в эту таблицу. Вот как мы можем подсчитать индекс точки вставки.
Допустим, мы хотим вставить новый элемент в отсортированную таблицу. Arrays.binarySearch() возвращает индекс ключа поиска, если он содержится в таблице. В противном случае она возвращает точку вставки, которую мы можем использовать для подсчета индекса для нового ключа: -(insertion point)-1. Более того, метод binarySearch является самым простым и эффективным методом поиска элемента в отсортированном массиве в Java.
Рассмотрим следующий пример. У нас есть таблица ввода с четырьмя элементами, упорядоченными по возрастанию. Мы хотели бы вставить номер 3 в эту таблицу. Вот как мы можем подсчитать индекс точки вставки.
Что означает CAP-теорема?
CAP-теорема, также известная как теорема Брюэра, является концептуальной основой для понимания распределенных систем.
Она была предложена в 2000 году Эриком Брюэром и формулирует три фундаментальных свойства, которые невозможно обеспечить одновременно в распределенной системе данных:
— Согласованность (Consistency);
— Доступность (Availability);
— Устойчивость к разделению (Partition tolerance).
Согласно CAP-теореме, в распределенной системе данных можно гарантировать только два из трех свойств:
— Согласованность и доступность (CA);
— Согласованность и устойчивость к разделению (CP);
— Доступность и устойчивость к разделению (AP).
Выбор между этими свойствами зависит от требований и характеристик конкретной системы и ее целей.
#вопросы_с_собеседований
CAP-теорема, также известная как теорема Брюэра, является концептуальной основой для понимания распределенных систем.
Она была предложена в 2000 году Эриком Брюэром и формулирует три фундаментальных свойства, которые невозможно обеспечить одновременно в распределенной системе данных:
— Согласованность (Consistency);
— Доступность (Availability);
— Устойчивость к разделению (Partition tolerance).
Согласно CAP-теореме, в распределенной системе данных можно гарантировать только два из трех свойств:
— Согласованность и доступность (CA);
— Согласованность и устойчивость к разделению (CP);
— Доступность и устойчивость к разделению (AP).
Выбор между этими свойствами зависит от требований и характеристик конкретной системы и ее целей.
#вопросы_с_собеседований
Final класс
Нельзя расширять класс, объявленный как final. Проще говоря, никакой класс не может наследоваться от данного.
Прекрасным примером final класса в JDK является String. Первый шаг к созданию неизменяемого класса — пометить его как final, и тогда нельзя будет его расширить.
#код
Нельзя расширять класс, объявленный как final. Проще говоря, никакой класс не может наследоваться от данного.
Прекрасным примером final класса в JDK является String. Первый шаг к созданию неизменяемого класса — пометить его как final, и тогда нельзя будет его расширить.
#код
Кто и в каких задачах быстрее? Coroutines, RxJava, Executor?
Вы когда-нибудь задумывались, какой из фреймворков для многопоточки самый быстрый? Я вроде и знал ответ, но задумывался периодически. В определённый момент сама судьба просто-напросто заставила меня взять и проверить. Так что если вам тоже всегда было это интересно, то я постарался протестировать, сравнить и предоставить результаты для вас.
Читать статью
Вы когда-нибудь задумывались, какой из фреймворков для многопоточки самый быстрый? Я вроде и знал ответ, но задумывался периодически. В определённый момент сама судьба просто-напросто заставила меня взять и проверить. Так что если вам тоже всегда было это интересно, то я постарался протестировать, сравнить и предоставить результаты для вас.
Читать статью
Метод Math.pow()
Возводит значение первого аргумента в степень второго аргумента, тем самым позволяет осуществить быстрое возведение в степень любых значений.
Выше рассмотрен пример возведение числа в квадрат и куб.
Заметьте, для вывода на экран целого значения используется "%.0f", так как метод возвращает double значение.
#код
Возводит значение первого аргумента в степень второго аргумента, тем самым позволяет осуществить быстрое возведение в степень любых значений.
Выше рассмотрен пример возведение числа в квадрат и куб.
Заметьте, для вывода на экран целого значения используется "%.0f", так как метод возвращает double значение.
#код
Пост-дайджест свежих полезных статей по теме Java. Сохраняй себе:
☕️ Просто о сложном: трассировки в микросервисах
☕️ Реализация Transactional outbox pattern и немного DDD
☕️ Настройка и мониторинг Java приложений
☕️ Хотите переплюнуть профессиональных Java-разработчиков? Roadmap для изучения Java в 2023 году
☕️ Ещё раз о пропертях или откуда что берётся
☕️ Профилирование, ассемблер и все-все-все
☕️ Spring Data JPA: замена нескольких запросов одним и почему это очень важно
#дайджест
☕️ Просто о сложном: трассировки в микросервисах
☕️ Реализация Transactional outbox pattern и немного DDD
☕️ Настройка и мониторинг Java приложений
☕️ Хотите переплюнуть профессиональных Java-разработчиков? Roadmap для изучения Java в 2023 году
☕️ Ещё раз о пропертях или откуда что берётся
☕️ Профилирование, ассемблер и все-все-все
☕️ Spring Data JPA: замена нескольких запросов одним и почему это очень важно
#дайджест
Предпочитаете улучшать навыки программирования в свободное время, читая статьи и просматривая видео, или обращаетесь к гайдам только по мере необходимости на работе? Расскажите в комментариях ⬇️
#интерактив
#интерактив