TGViewer
Java | Вопросы собесов Java | Вопросы собесов @easy_java_ru · 11.3K subscribers
Post #1515 2.8K
🤔 Для чего нужны функциональные интерфейсы ToDoubleBiFunction<T,U>, ToIntBiFunction<T,U> и ToLongBiFunction<T,U>?

Эти три интерфейса – это функциональные интерфейсы из java.util.function, которые представляют функцию, принимающую два аргумента и возвращающую примитивный тип (double, int или long).

🚩`ToDoubleBiFunction<T, U>` – возвращает `double`

Этот интерфейс принимает два объекта и возвращает double.
import java.util.function.ToDoubleBiFunction;

public class Main {
public static void main(String[] args) {
ToDoubleBiFunction<Integer, Integer> average = (math, physics) -> (math + physics) / 2.0;

double result = average.applyAsDouble(85, 90);
System.out.println("Средний балл: " + result); // 87.5
}
}


🚩`ToIntBiFunction<T, U>` – возвращает `int`

Этот интерфейс принимает два объекта и возвращает int.
import java.util.function.ToIntBiFunction;

public class Main {
public static void main(String[] args) {
ToIntBiFunction<String, String> compareLength = (s1, s2) -> s1.length() - s2.length();

int result = compareLength.applyAsInt("Java", "Python");
System.out.println("Разница в длине строк: " + result); // -2 (Java=4, Python=6)
}
}


🚩`ToLongBiFunction<T, U>` – возвращает `long`

Этот интерфейс принимает два объекта и возвращает long.
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
import java.util.function.ToLongBiFunction;

public class Main {
public static void main(String[] args) {
ToLongBiFunction<LocalDate, LocalDate> daysBetween = (start, end) ->
ChronoUnit.DAYS.between(start, end);

long days = daysBetween.applyAsLong(LocalDate.of(2024, 1, 1), LocalDate.of(2024, 3, 1));
System.out.println("Разница в днях: " + days); // 60
}
}


Ставь 👍 и забирай 📚 Базу знаний
  • 👍 9
  • 💊 4
More from @easy_java_ru
  1. Oct 7, 2026🔥 Скрытые вакансии с удаленной работой для Java разработчика, которые нигде больше не пуб…
  2. Oct 7, 2026Post #2949
  3. Oct 6, 2026🤔 Какая сложность вставки элемента в LinkedList? - O(1) — если вставка происходит в начал…
  4. Oct 6, 2026🤔 К какому принципу ООП относится переопределение методов? Переопределение методов (Metho…
  5. Oct 6, 2026Post #2946
  6. Oct 5, 2026🤔 Для чего нужно final для статического метода? Ключевое слово final у статического метод…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →