Лента постов канала Java Learning (@Java_per_month) https://t.me/Java_per_month Обучающий канал по Java По всем вопросам @valentin_mascarov ru https://linkbaza.com/catalog/-1001260883373 Fri, 22 Aug 2025 20:22:46 +0300
Что будет выведено при выполнении кода?

Пояснение
⬇️
Статический вложенный класс Nested может быть создан без экземпляра внешнего класса Outer. Код Outer.Nested nested = new Outer.Nested(); корректен, и метод display выводит "Nested class".


Java Learning 👩‍💻
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Thu, 21 Aug 2025 21:32:54 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Thu, 21 Aug 2025 19:26:34 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Thu, 21 Aug 2025 16:30:52 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Wed, 20 Aug 2025 22:22:18 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Tue, 19 Aug 2025 21:09:23 +0300
Что будет выведено при выполнении кода?

Пояснение
⬇️
Переменная x объявлена как final, что делает её неизменяемой после инициализации. Она выводит значение 10. Класс FinalExample содержит переменную value, также объявленную как final, и метод show, который возвращает строку с этим значением. Финальный метод можно вызывать, но его нельзя переопределить в подклассах. Код компилируется и работает без ошибок.


Java Learning 👩‍💻
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Mon, 18 Aug 2025 09:42:56 +0300
⚙️ Optional.flatMap()

В Java метод Optional.flatMap() позволяет преобразовать значение внутри Optional, возвращая другой Optional. Это особенно полезно для работы с вложенными Optional.

Java Learning 👩‍💻
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Sun, 17 Aug 2025 21:15:50 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Sun, 17 Aug 2025 17:50:53 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Sat, 16 Aug 2025 17:33:00 +0300
👩‍💻 Задача по Java: Удаление дубликатов из списка с сохранением порядка

Напишите метод, который принимает список строк и возвращает новый список, содержащий только уникальные строки, сохраняя их порядок появления.

Пример:

import java.util.List;

public class Main {
public static void main(String[] args) {
List input = List.of("apple", "banana", "apple", "orange", "banana");
List result = removeDuplicates(input);
System.out.println(result);
// Ожидаемый результат: [apple, banana, orange]
}
}


Решение задачи на картинке ☝️

Java Learning 👩‍💻
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Thu, 14 Aug 2025 20:56:47 +0300
⚙️ Stream.collect() с Collector.of()

В Java метод Collector.of() позволяет создавать пользовательские коллекции с кастомной логикой для сборки данных. Это даёт полный контроль над процессом объединения элементов.

Java Learning 👩‍💻
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Wed, 13 Aug 2025 21:50:01 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Wed, 13 Aug 2025 18:09:00 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Wed, 13 Aug 2025 17:57:41 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Tue, 12 Aug 2025 17:55:09 +0300
Вопрос на собеседовании

Что такое ForkJoinPool в Java, как он работает, и как его использовать для параллельной обработки задач?

Ответ ⬇️
ForkJoinPool — это специализированный пул потоков, который рекурсивно делит задачи на подзадачи (fork) и объединяет их результаты (join). Он оптимизирован для задач, которые можно разделить на независимые части, например, вычисление суммы элементов массива. Основными классами являются RecursiveTask для задач с результатом и RecursiveAction для задач без результата.

Пример использования ⚙️
import java.util.concurrent.RecursiveTask;
import java.util.concurrent.ForkJoinPool;

class SumTask extends RecursiveTask {
private final int[] array;
private final int start, end;

public SumTask(int[] array, int start, int end) {
this.array = array;
this.start = start;
this.end = end;
}

@Override
protected Integer compute() {
if (end - start <= 5) {
int sum = 0;
for (int i = start; i < end; i++) sum += array[i];
return sum;
} else {
int mid = (start + end) / 2;
SumTask left = new SumTask(array, start, mid);
SumTask right = new SumTask(array, mid, end);
left.fork();
return right.compute() + left.join();
}
}
}

public class Main {
public static void main(String[] args) {
int[] array = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
ForkJoinPool pool = new ForkJoinPool();
int result = pool.invoke(new SumTask(array, 0, array.length));
System.out.println("Сумма: " + result); // Сумма: 55
}
}


Java Learning 👩‍💻n=" rel="nofollow">
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Mon, 11 Aug 2025 18:43:14 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Sat, 09 Aug 2025 20:24:22 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Fri, 08 Aug 2025 21:42:54 +0300
RefactorFirst

RefactorFirst — это инструмент для Java-кода, помогающий определить и расставить по приоритетам классы, которые следует рефакторить в первую очередь. Он работает, сканируя код на наличие «божественных классов» (God Classes) и классов с высокой степенью связности.

«Божественных классов» — это классы, которые делают слишком много и, следовательно, являются плохо спроектированными. Они могут быть трудными для понимания, тестирования и сопровождения.

Java Learning 👩‍💻
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Thu, 07 Aug 2025 16:58:35 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Tue, 05 Aug 2025 20:28:26 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Mon, 04 Aug 2025 22:33:38 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Sun, 03 Aug 2025 18:50:37 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Fri, 01 Aug 2025 22:23:32 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Thu, 31 Jul 2025 23:05:49 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Thu, 31 Jul 2025 18:02:08 +0300
⁉️👩‍💻Разрабатываете на Java, но проект на Spring превращается в черный ящик? Бины ведут себя непредсказуемо, конфигурация разрастается, а ошибка в одном модуле рушит всю систему.

Интервью на позицию Middle неудачно — не хватает уверенности в Spring.

🤝 Тем временем рынок требует специалистов, которые не просто знают Spring, а умеют строить продакшен-приложения с его помощью. Компании ищут разработчиков, которые понимают, как работают Spring Boot, Spring Security, Spring MVC и могут строить микросервисную архитектуру.

⚡️ На курсе «Разработчик на Spring Framework» мы закроем пробелы и дадим актуальные навыки. Практика на реальных кейсах, ревью заданий, тестовое собеседование — вы освоите Spring так, чтобы уверенно применять его в работе.

➡️ Пройдите вступительное тестирование и получите скидку на обучение: https://clck.ru/3NQA5d


🎁 Дарим промокод, который дает скидку на обучение - SRING7

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Thu, 31 Jul 2025 17:34:15 +0300
⚙️ List.of()

В Java метод List.of() позволяет быстро создать неизменяемый список. Это удобно для создания небольших коллекций с фиксированным набором элементов.

Java Learning 👩‍💻
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Wed, 30 Jul 2025 20:22:47 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Tue, 29 Jul 2025 21:41:19 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Sun, 27 Jul 2025 21:38:17 +0300
⚙️ Collectors.joining()

В Java метод Collectors.joining() из пакета java.util.stream позволяет объединить элементы потока в одну строку с опциональным разделителем, префиксом и суффиксом. Это удобно для создания строковых представлений коллекций.

Java Learning 👩‍💻
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Sat, 26 Jul 2025 22:06:53 +0300
Подробнее
]]>
https://linkbaza.com/catalog/-1001260883373 Fri, 25 Jul 2025 23:24:52 +0300
Подробнее
]]>