Java Developer – Telegram
Java Developer
15.8K subscribers
1.86K photos
136 videos
2 files
2.07K links
Авторский канал действующего разработчика — интересные заметки, новые технологии, библиотеки и фреймворки

Сотрудничество: @bape_ads
Прайс: @bape_media

РКН: https://clck.ru/3GHfTK

Реклама на бирже: https://telega.in/c/java_tg
Download Telegram
Задача с LeetCode «Delete Operation for Two Strings №583»

Даны две строки word1 и word2, верните минимальное количество шагов, необходимое для того, чтобы слова word1 и word2 стали одинаковыми.

За один шаг вы можете удалить ровно один символ в каждой строке.

Пример 1:
Входные данные: word1 = "sea", word2 = "eat"
Вывод: 2
Пояснение: Нужен один шаг, чтобы преобразовать "sea" в "ea", и еще один шаг, чтобы преобразовать "eat" в "ea".

Пример 2:
Входные данные: word1 = "leetcode", word2 = "etco"
Вывод: 4

Ограничения:
1. 1 <= word1.length, word2.length <= 500
2. word1 и word2 состоят только из строчных английских букв.

📱 Java Developer | #задача #medium
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥54
👩‍💻 Пишем Android приложение для фильтрации спам-звонков

В статье рассказывается о создании Android-приложения для фильтрации спам-звонков.

Автор делится опытом разработки, описывая обработку входящих вызовов, проверку номеров через API и отображение уведомлений пользователю.

Ссылка на статью

📱 Java Developer | #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
10👍5🔥2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁457🤔6👍1🔥1
6😁4
Под какой буквой правильный ответ?
Anonymous Quiz
63%
A
17%
B
9%
C
11%
D
10🤯1
👩‍💻 Что такое «thread-safe»?

«Thread-safe» — это способность объекта или кода работать корректно в многопоточной среде, где несколько потоков одновременно обращаются к одному и тому же ресурсу. Это достигается путем синхронизации доступа к общим данным.

Основная проблема многопоточности — состояние гонки, когда несколько потоков изменяют общие данные, вызывая некорректное поведение программы. Использование ключевого слова synchronized позволяет избежать этих проблем, обеспечивая безопасный доступ к данным.

❤️если было полезно

📱 Java Developer | #обучение
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1915
Please open Telegram to view this post
VIEW IN TELEGRAM
😁34🤣155
Вопрос с собеседования

Почему строка популярна в качестве ключа в HashMap?

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

📱 Java Developer | #собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥238💯4
👩‍💻 Символы 'Y' и 'y' в Java: нюансы, которые нужно знать

В статье рассматривается различие между символами 'Y' и 'y' при форматировании дат в Java.

Автор объясняет, как использование 'Y' может привести к неожиданным результатам, особенно в конце года, и предлагает способы избежать подобных ошибок.

Ссылка на статью

📱 Java Developer | #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
10🔥4
База

📱 Java Developer | #memes
Please open Telegram to view this post
VIEW IN TELEGRAM
😁317👍5
Что выведет код сверху?
Anonymous Quiz
2%
0
32%
1
36%
2
4%
null
27%
Ошибка компиляции
🤔20👍52
3
👩‍💻 Как преобразовать Iterable в Collection в Java?

Иногда можно столкнуться с необходимостью преобразовать Iterable в Collection. Например, сторонние библиотеки часто возвращают результаты в виде Iterable, но для дальнейшей работы удобнее использовать Collection.

Давайте рассмотрим два способа, как это можно сделать:

▶️Stream API (Java 8+)

С помощью Stream API это преобразование можно выполнить за пару строк:

Iterable<String> iterable = new ArrayList<>();
Collection<String> collection = StreamSupport.stream(iterable.spliterator(), false)
.collect(Collectors.toList());


Сначала создаётся поток из Iterable, а затем результат собирается в список.

▶️Guava

Если вы используете библиотеку Guava от Google, преобразование становится ещё проще:

Iterable<String> iterable = new ArrayList<>();
Collection<String> collection = Lists.newArrayList(iterable);


Этот подход идеален, если Guava уже подключена к вашему проекту.

Оба способа быстро решают задачу и помогают избежать лишнего кода.

❤️если было полезно

➡️ Java Developer | #обучение
Please open Telegram to view this post
VIEW IN TELEGRAM
19👍6🔥2
Будни на удалёнке

📱 Java Developer | #memes
Please open Telegram to view this post
VIEW IN TELEGRAM
👍198😁7
Задача с LeetCode «Can Place Flowers №605»

У вас есть клумба, где одни участки засажены (1), а другие пусты(0). Цветы нельзя сажать на соседних участках.

Дан массив flowerbed (0 — пусто, 1 — занято) и число n. Нужно определить, можно ли посадить n цветов, соблюдая правило, чтобы соседние участки оставались свободными.

Верните true, если это возможно, и false — если нет.

Пример 1:
Входные данные: flowerbed = [1,0,0,0,1], n = 1
Вывод: true

Пример 2:
Входные данные: flowerbed = [1,0,0,0,1], n = 2
Вывод: false

📱 Java Developer | #задача #easy
Please open Telegram to view this post
VIEW IN TELEGRAM
5🤔3🔥2
Все мы немного Дмитрий Маликов

📱 Java Developer | #memes
Please open Telegram to view this post
VIEW IN TELEGRAM
😁359💯6
👩‍💻 Транзакции в Spring: сила управления данными

В статье рассматривается работа с транзакциями в Spring: зачем они нужны, как работают и как их правильно настроить.

Автор объясняет, как обеспечить целостность данных при выполнении операций, приводя примеры кода и практические рекомендации.

Ссылка на статью

📱 Java Developer | #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
15
Please open Telegram to view this post
VIEW IN TELEGRAM
😁531
Под какой буквой правильный ответ?
Anonymous Quiz
29%
A
4%
B
55%
C
11%
D
6👍1
👩‍💻 Аннотации @RequestParam и @PathVariable

Сегодня поговорим о двух аннотациях в Spring — @RequestParam и @PathVariable, разберём их различия и приведём примеры использования.

Работа с параметрами запроса — одна из ключевых задач при разработке веб-приложений. @RequestParam и @PathVariable помогают легко извлекать данные из URL.

▶️Аннотация @PathVariable

Используется для получения значений из пути URL. Например, если у нас есть запрос http://website.com/products/123, где 123 — это ID продукта:
@GetMapping("/products/{id}")
public Product getProduct(@PathVariable String id) {
// обработка ID
return productService.getProductById(id);
}

В этом случае 123 автоматически будет сопоставлено с параметром id метода.


▶️Аннотация @RequestParam

Эта аннотация используется для извлечения параметров из строки запроса. Например, если запрос выглядит так: http://website.com/products?id=123:
@GetMapping("/products")
public Product getProduct(@RequestParam String id) {
// обработка ID
return productService.getProductById(id);
}

Здесь id=123 извлекается из параметров URL и передаётся в метод.


▶️Где и когда использовать?

@PathVariable удобно применять, когда значения являются частью структуры пути URL (например, идентификатор ресурса). Часто используется в REST API для четкой организации маршрутов, например /users/{userId} или /orders/{orderId}.

@RequestParam подходит для работы с необязательными или дополнительными параметрами, передаваемыми в строке запроса, например фильтры, сортировка или пагинация: /products?category=electronics&sort=price.

📌 Используйте @PathVariable для статичных идентификаторов и @RequestParam для динамических, кастомизируемых параметров.


❤️если было полезно

📱 Java Developer | #обучение
Please open Telegram to view this post
VIEW IN TELEGRAM
35👍11