Java ToDoubleBiFunction

Introduction

In Java, the ToDoubleBiFunction interface is a functional interface that represents a function that accepts two arguments and produces a double result. It is part of the java.util.function package and is commonly used for operations that involve two input values and return a double.

Table of Contents

  1. What is ToDoubleBiFunction?
  2. Methods and Syntax
  3. Examples of ToDoubleBiFunction
  4. Real-World Use Case
  5. Conclusion

1. What is ToDoubleBiFunction?

ToDoubleBiFunction is a functional interface that takes two arguments of types T and U and returns a double result. It is useful for scenarios where two values need to be processed or combined to produce a double.

2. Methods and Syntax

The main method in the ToDoubleBiFunction interface is:

  • double applyAsDouble(T t, U u): Applies this function to the given arguments and returns a double result.

Syntax

ToDoubleBiFunction<T, U> function = (T t, U u) -> {
    // operation on t and u
    return result;
};

3. Examples of ToDoubleBiFunction

Example 1: Calculating Average of Two Numbers

import java.util.function.ToDoubleBiFunction;

public class AverageCalculator {
    public static void main(String[] args) {
        // Define a ToDoubleBiFunction that calculates the average of two integers
        ToDoubleBiFunction<Integer, Integer> average = (a, b) -> (a + b) / 2.0;

        double result = average.applyAsDouble(10, 20);
        System.out.println("Average: " + result);
    }
}

Output:

Average: 15.0

Example 2: Calculating Distance Between Two Points

import java.util.function.ToDoubleBiFunction;

public class DistanceCalculator {
    public static void main(String[] args) {
        // Define a ToDoubleBiFunction that calculates the Euclidean distance between two points
        ToDoubleBiFunction<int[], int[]> distance = (p1, p2) -> Math.sqrt(Math.pow(p2[0] - p1[0], 2) + Math.pow(p2[1] - p1[1], 2));

        double result = distance.applyAsDouble(new int[]{1, 2}, new int[]{4, 6});
        System.out.println("Distance: " + result);
    }
}

Output:

Distance: 5.0

4. Real-World Use Case: Calculating Weighted Score

In applications, ToDoubleBiFunction can be used to calculate a weighted score from two values.

import java.util.function.ToDoubleBiFunction;

public class WeightedScoreCalculator {
    public static void main(String[] args) {
        // Define a ToDoubleBiFunction to calculate a weighted score
        ToDoubleBiFunction<Integer, Double> weightedScore = (score, weight) -> score * weight;

        double result = weightedScore.applyAsDouble(85, 0.75);
        System.out.println("Weighted Score: " + result);
    }
}

Output:

Weighted Score: 63.75

Conclusion

The ToDoubleBiFunction interface is used in Java for operations involving two inputs that produce a double result. It is particularly beneficial in scenarios requiring mathematical calculations or data processing. Using ToDoubleBiFunction can lead to cleaner and more efficient code, especially in functional programming contexts.

Comments

Spring Boot 3 Paid Course Published for Free
on my Java Guides YouTube Channel

Subscribe to my YouTube Channel (165K+ subscribers):
Java Guides Channel

Top 10 My Udemy Courses with Huge Discount:
Udemy Courses - Ramesh Fadatare