switch-выражения — это улучшенная форма классического
switch, добавленная в Java 14+. Она позволяет возвращать значение из switch, использовать стрелочную форму (->) и исключает ошибки с fall-through.• Позволяет возвращать результат напрямую
• Меньше шаблонного кода
• Безопаснее: все пути должны быть покрыты
public class Main {
public static void main(String[] args) {
String role = "admin";
int accessLevel = switch (role) {
case "admin" -> 3;
case "manager" -> 2;
case "user" -> 1;
default -> 0;
};
System.out.println("Access level: " + accessLevel); // ➔ 3
}
}👀 switch-выражения делают код компактнее, безопаснее и более выразительным. Особенно полезны в REST-контроллерах, конфигурациях и обработке enum/строковых значений.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11👍6🔥1
В статье Java-лид из финтеха делится 7 дикими кейсами из интеграционных проектов — требования, от которых или ржёшь, или страдаешь. Всё по-честному и с любовью к коллегам.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1🔥1
Ответ:
Anonymous Quiz
24%
Static block, x = 10
36%
Static block, x = 5
10%
x = 5, Static block
29%
Ошибка выполнения
❤1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁26👍11🤔5
Text blocks — это новая форма строковых литералов, добавленная в Java 13+, которая позволяет удобно писать многострочные строки с минимальным количеством управляющих символов.
Это особенно полезно при работе с JSON, XML или SQL.
• Улучшают читаемость кода
• Избавляют от лишних символов экранирования
• Поддерживают автоматическое форматирование
public class Main {
public static void main(String[] args) {
String json = """
{
"name": "Alice",
"age": 30,
"city": "New York"
}
""";
System.out.println(json);
}
}👀 Text blocks упрощают создание длинных строковых шаблонов, снижают вероятность ошибок форматирования и делают код более аккуратным. Особенно полезны при работе с данными, логами и шаблонами.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥8
В статье показывают, как реализовать денежные переводы в SQL с учётом изоляции транзакций: простая задача превращается в боль при параллельном доступе. Без дедлоков не обошлось.
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰4👍1
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣32🔥6👍3
Что произойдёт, если в блоке finally указать return?
Пример
public class Main {
public static void main(String[] args) {
System.out.println(testMethod()); // ➔ 10
}
static int testMethod() {
try {
return 5;
} finally {
return 10;
}
}
}Ответ
Если в блоке finally указать оператор return, он перекроет любое возвращаемое значение из блока try или catch. Это считается антипаттерном, так как делает поведение метода непредсказуемым.
Даже если в блоке try или catch вызывается return, исключение или break, блок finally всегда выполнится, и если в нём есть свой return, он заменит возвращаемое значение
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥22👍6❤1
Pattern Matching для instanceof — упрощает проверку типов и автоматическое приведение объекта к нужному классу.
После проверки через instanceof переменная автоматически становится нужного типа — без явного кастинга. Это сокращает код и уменьшает вероятность ошибок.
• Упрощает проверки типов
• Избавляет от явного приведения
• Делает код более читаемым
public class Main {
public static void main(String[] args) {
Object obj = "Hello, Java!";
if (obj instanceof String str) {
System.out.println("Длина строки: " + str.length()); // ➔ Длина строки: 13
}
}
}👀 Pattern Matching для instanceof упрощает работу с типами, особенно при проверке объектов на соответствие классу. Это полезно в логике обработки данных и при работе с полиморфными объектами.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤4🔥2
В статье обсуждают, почему технические собеседования — это не пытка, а интеллектуальное удовольствие: Java-разработчик из Skillbox делится опытом и подходами к процессу.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍2😁2🤔2