ru
Feedback

Не попадитесь на канал ботавода! Telemetrio находит и помечает такие каналы 👉 Хотите видеть метку — оформите подписку

Easy Java

Easy Java

Открыть в Telegram

Лучшие обучающие материалы и другие полезности для Java-разработчиков. Сотрудничество: @heywan_n1 Цены: @heywan_media Реклама на бирже: https://telega.in/c/+r8kkGSypBY84MmIy

Больше
4 940
Подписчики
-424 часа
-187 дней
-2130 дней
Архив постов
Как уже ЗА#БАЛИ все эти блокировки😡 Благо наткнулся на Anyport и теперь не нужно страдать от цифровой изоляции. 🌐 TELEGRAM
Как уже ЗА#БАЛИ все эти блокировки😡 Благо наткнулся на Anyport и теперь не нужно страдать от цифровой изоляции. 🌐 TELEGRAM — Рабочие звонки и видео/фото файлы 🌐 WhatsApp — Отличная связь Ловит даже на парковке 🌐 Ютуб — Все видео грузят без Запрета в 4к 🌐 Discord — Работает, как будто блокировок и не было 🌐TikTok — Без вылетов и перезагрузок Оставляю вам ссылку на бесплатный пробный период👇 https://t.me/AnyportBot?start=it1900

👩‍💻 Что такое PriorityBlockingQueue в Java и зачем она нужна? PriorityBlockingQueue — это потокобезопасная очередь из java.util.concurrent, которая хранит элементы в отсортированном виде согласно их приоритету.
Она активно используется в задачах, где нужно управлять порядком обработки — например, в планировщиках, системах обработки задач и диспетчерах потоков.
• Элементы автоматически сортируются • Работает в многопоточном режиме • Подходит для диспетчеризации задач по приоритету ⚡️ Пример:
import java.util.concurrent.PriorityBlockingQueue;

public class Main {
    public static void main(String[] args) {
        PriorityBlockingQueue<Integer> queue = new PriorityBlockingQueue<>();

        queue.add(5);
        queue.add(1);
        queue.add(3);

        while (!queue.isEmpty()) {
            System.out.println(queue.poll()); // ➔ 1, 3, 5
        }
    }
}
👀 PriorityBlockingQueue особенно полезна, когда задачи имеют приоритеты — например, обработка срочных запросов, планирование задач или распределение ресурсов.
➡️ Easy Java | #Теория

Ухватил ОФФЕР с ЗП более чем 500к🤑 Несколько раз в месяц Топовые IT компании выкладывают вакансии с огромной зарплатой даже
Ухватил ОФФЕР с ЗП более чем 500к🤑 Несколько раз в месяц Топовые IT компании выкладывают вакансии с огромной зарплатой даже у джунов, а я расскажу как попасть на ТимЛида‼️ Я — Артем и в своём телеграм канале рассказываю: 🔴 Как максимально быстро вырасти до Тим Лида в IT компаний с нуля — [Инструкция] 🔴 Как собрать лучшую команду на удалёнке — [Пояснение] 🔴Подсказки и фишечки от ТимЛида с 13 летним опытом — [Список] Подписаться можно тут: https://t.me/+lqsL1tPCnp9mNWIy

👩‍💻 Guardrails для LLM на Java: как приручить промпт‑инъекции и токсичные ответы Автор объясняет, почему стандартные систем
👩‍💻 Guardrails для LLM на Java: как приручить промпт‑инъекции и токсичные ответы Автор объясняет, почему стандартные системные промпты недостаточны для защиты от таких угроз, как: - Prompt injection / jailbreak (взлом модели через специальные инструкции) - Утечка PII (личных данных, email, номеров карт) - Токсичные ответы LLM - Запрещенные темы и атаки переполнения контекста В качестве решения предлагается JGuardrails — Java-библиотека (Java 17+), работающая как фильтр до и после вызова LLM на уровне кода, без привязки к фреймворку. ⛓ К прочтению по ссылке ➡️ Easy Java | #Статья

Те самые странные сны… ➡️ Easy Java | #Мем
Те самые странные сны… ➡️ Easy Java | #Мем

Ухватил ОФФЕР с ЗП более чем 500к🤑 Несколько раз в месяц Топовые IT компании выкладывают вакансии с огромной зарплатой даже
Ухватил ОФФЕР с ЗП более чем 500к🤑 Несколько раз в месяц Топовые IT компании выкладывают вакансии с огромной зарплатой даже у джунов, а я расскажу как попасть на ТимЛида‼️ Я — Артем и в своём телеграм канале рассказываю: 🔴 Как максимально быстро вырасти до Тим Лида в IT компаний с нуля — [Инструкция] 🔴 Как собрать лучшую команду на удалёнке — [Пояснение] 🔴Подсказки и фишечки от ТимЛида с 13 летним опытом — [Список] Подписаться можно тут: https://t.me/+lqsL1tPCnp9mNWIy

👩‍💻 Что такое CompletableFuture.supplyAsync() и зачем он нужен? Это статический метод для асинхронного выполнения задачи с возвратом результата. Он запускает код в отдельном потоке из общего пула (ForkJoinPool.commonPool()), не блокируя главный поток. ⚡️ Пример:
import java.util.concurrent.*;

public class AsyncExample {
    public static void main(String[] args) throws Exception {
        System.out.println("Начало: " + Thread.currentThread().getName());

        // Асинхронный вызов API / тяжёлый расчёт
        CompletableFuture<String> future = CompletableFuture.supplyAsync(() -> {
            try {
                Thread.sleep(2000); // симуляция долгой операции
            } catch (InterruptedException e) { }
            return "Результат: " + Thread.currentThread().getName();
        });

        System.out.println("Главный поток не заблокирован");

        // Получение результата (блокируется, только если надо)
        String result = future.join();
        System.out.println(result);
    }
}
Особенно полезен при вызове внешних API, параллельной обработке списков, построении неблокирующих пайплайнов
➡️ Easy Java | #Теория

Что выведет код?
Anonymous voting

👩‍💻 Викторина: что выведет код?
public class Main {
    public static void main(String[] args) {
        try {
            throw new RuntimeException("Oops");
        } catch (Exception e) {
            System.out.print("A");
        } finally {
            System.out.print("B");
        }
        System.out.print("C");
    }
}
➡️ Easy Java | #Викторина

👩‍💻 Event Loop в Java для начинающих JavaScript выполняет код в одном основном потоке. Это означает, что инструкции выполня
👩‍💻 Event Loop в Java для начинающих JavaScript выполняет код в одном основном потоке. Это означает, что инструкции выполняются последовательно — одна за другой. Получил команду — выполнил. Но что делать интерпретатору, если он встречает код, который не может выполнить сразу? Именно про это вы узнаете в данной статье ⛓ Читаем по ссылке ➡️ Easy Java | #Ресурс

👩‍💻 Что такое LocalDate.now() и зачем он нужен? LocalDate.now() — это статический метод класса java.time.LocalDate, который возвращает текущую дату в системном часовом поясе. ⚡️ Пример: import java.time.*; import java.time.format.*; public class LocalDateExample { public static void main(String[] args) { // Получение текущей даты LocalDate today = LocalDate.now(); System.out.println("Сегодня: " + today); // Разные форматы System.out.println("Год: " + today.getYear()); System.out.println("Месяц: " + today.getMonth()); System.out.println("День недели: " + today.getDayOfWeek()); // Форматирование DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd.MM.yyyy"); System.out.println("Форматированная: " + today.format(formatter)); // Арифметика с датами LocalDate nextWeek = today.plusDays(7); LocalDate nextMonth = today.plusMonths(1); System.out.println("Через неделю: " + nextWeek); System.out.println("Через месяц: " + nextMonth); // Сравнение дат if (today.isAfter(LocalDate.of(2024, 1, 1))) { System.out.println("Мы уже в 2024 году или позже"); } } }
Особенно полезен при логировании даты событий, расчете сроков, фильтрации записей и генерации отчетов.
➡️ Easy Java | #Теория

😢 Надоел медленный интернет? Подключи «VISION VPN» и забудь о любых проблемах. 🔸3 дня бесплатно 🔸Одна подписка — 10+ локац
😢 Надоел медленный интернет? Подключи «VISION VPN» и забудь о любых проблемах.
🔸3 дня бесплатно 🔸Одна подписка — 10+ локаций. 🔸Безлимитный трафик 🔸Работает на всех устройствах
Работает когда? Работает всегда — «VISION VPN»!

Признайтесь, каждый из вас ждет такую вакансию ➡️ Easy Java | #Мем
Признайтесь, каждый из вас ждет такую вакансию ➡️ Easy Java | #Мем

Что выведет код?
Anonymous voting

👩‍💻 Викторина: что выведет код?
public class Main {
    static class A {
        static final B b = new B();
        static final int value = 42;
    }
    
    static class B {
        static final int value = A.value;
    }
    
    public static void main(String[] args) {
        System.out.println(A.b.value);
    }
➡️ Easy Java | #Викторина

👩‍💻 Универсальный инструмент для работы с базами данных и SQL-клиент Бесплатный многоплатформенный инструмент для работы с
👩‍💻 Универсальный инструмент для работы с базами данных и SQL-клиент Бесплатный многоплатформенный инструмент для работы с базами данных, предназначенный для разработчиков, SQL-программистов, администраторов и аналитиков баз данных. Обладает множеством функций , включая редактор схем, редактор SQL, редактор данных, интеграцию с ИИ, ER-диаграммы, экспорт/импорт/миграцию данных, планы выполнения SQL-запросов, инструменты администрирования баз данных, панели мониторинга баз данных, средство просмотра пространственных данных, прокси-сервер и SSH-туннелирование, редактор пользовательских драйверов баз данных и т.д. ⛓ Ссылка на GitHub ➡️ Easy Java | #Ресурс

👩‍💻 Что такое Optional.ifPresent() и зачем он нужен? Optional.ifPresent() — это метод класса Optional<T>, который выполняет заданное действие, если значение присутствует. Если значение отсутствует, ничего не происходит. ⚡️ Пример:
import java.util.*;

public class IfPresentExample {
    public static void main(String[] args) {
        // Поиск пользователя
        Optional<String> email = findUserEmail(123);
        
        // Старый способ (много кода)
        if (email.isPresent()) {
            sendEmail(email.get(), "Привет!");
        }
        
        // Новый способ (кратко и элегантно)
        email.ifPresent(e -> sendEmail(e, "Привет!"));
        
        // С method reference
        email.ifPresent(System.out::println);
        
        // Работа со списком опциональных значений
        List<Optional<String>> names = Arrays.asList(
            Optional.of("Анна"),
            Optional.empty(),
            Optional.of("Иван")
        );
        
        // Обрабатываем только существующие значения
        names.forEach(opt -> 
            opt.ifPresent(name -> 
                System.out.println("Привет, " + name)
            )
        );
        // Вывод: Привет, Анна
        //        Привет, Иван
    }
    
    static Optional<String> findUserEmail(int id) {
        return id == 123 ? 
            Optional.of("user@mail.com") : 
            Optional.empty();
    }
    
    static void sendEmail(String email, String msg) {
        System.out.println("Отправлено на " + email + ": " + msg);
    }
}
Особенно полезен для отправки уведомлений при наличии данных, логировании опциональных значений, обновлении объектов, выполнении побочных эффектов, обработке результатов поиска.
➡️ Easy Java | #Теория

Всем бы такие софт-скиллы... ➡️ Easy Java | #Мем
Всем бы такие софт-скиллы... ➡️ Easy Java | #Мем

Что выведет код?
Anonymous voting

👩‍💻 Викторина: что выведет код?
public class Main {
    private static ThreadLocal<String> threadLocal = new ThreadLocal<>();
    private static InheritableThreadLocal<String> inheritable = new InheritableThreadLocal<>();
    
    public static void main(String[] args) {
        threadLocal.set("main");
        inheritable.set("main");
        
        Thread child = new Thread(() -> {
            System.out.print(threadLocal.get() + " ");
            System.out.print(inheritable.get() + " ");
            
            inheritable.set("child");
            
            Thread grandChild = new Thread(() -> {
                System.out.print(inheritable.get());
            });
            grandChild.start();
            try { grandChild.join(); } catch (Exception e) {}
        });
        
        child.start();
    }
}
➡️ Easy Java | #Викторина