🎓 Top 15 Udemy Courses (80-90% Discount): My Udemy Courses - Ramesh Fadatare — All my Udemy courses are real-time and project oriented courses.
▶️ Subscribe to My YouTube Channel (178K+ subscribers): Java Guides on YouTube
▶️ For AI, ChatGPT, Web, Tech, and Generative AI, subscribe to another channel: Ramesh Fadatare on YouTube
Introduction
In Java, the LongUnaryOperator interface is a functional interface that represents an operation on a single long-valued operand, producing a long result. It is part of the java.util.function package and is commonly used for operations that transform long values.
Table of Contents
- What is
LongUnaryOperator? - Methods and Syntax
- Examples of
LongUnaryOperator - Real-World Use Case
- Conclusion
1. What is LongUnaryOperator?
LongUnaryOperator is a functional interface that takes a single long as input and returns a long as a result. It is useful for scenarios where mathematical operations or transformations are applied to long values.
2. Methods and Syntax
The main methods in the LongUnaryOperator interface are:
long applyAsLong(long operand): Applies this operator to the given operand and returns alongresult.default LongUnaryOperator andThen(LongUnaryOperator after): Returns a composed operator that first applies this operator to its input, and then applies theafteroperator to the result.default LongUnaryOperator compose(LongUnaryOperator before): Returns a composed operator that first applies thebeforeoperator to its input, and then applies this operator to the result.
Syntax
LongUnaryOperator operator = (long operand) -> {
// operation on operand
return result;
};
3. Examples of LongUnaryOperator
Example 1: Doubling a Value
import java.util.function.LongUnaryOperator;
public class DoublingExample {
public static void main(String[] args) {
// Define a LongUnaryOperator that doubles the value
LongUnaryOperator doubleValue = (operand) -> operand * 2;
long result = doubleValue.applyAsLong(5L);
System.out.println("Doubled Value: " + result);
}
}
Output:
Doubled Value: 10
Example 2: Incrementing a Value
import java.util.function.LongUnaryOperator;
public class IncrementExample {
public static void main(String[] args) {
// Define a LongUnaryOperator that increments the value by 1
LongUnaryOperator increment = (operand) -> operand + 1;
long result = increment.applyAsLong(7L);
System.out.println("Incremented Value: " + result);
}
}
Output:
Incremented Value: 8
Example 3: Using andThen
import java.util.function.LongUnaryOperator;
public class AndThenExample {
public static void main(String[] args) {
// Define two LongUnaryOperators
LongUnaryOperator doubleValue = (operand) -> operand * 2;
LongUnaryOperator increment = (operand) -> operand + 1;
// Compose the operators
LongUnaryOperator doubleThenIncrement = doubleValue.andThen(increment);
long result = doubleThenIncrement.applyAsLong(3L);
System.out.println("Result after doubling and incrementing: " + result);
}
}
Output:
Result after doubling and incrementing: 7
Example 4: Using compose
import java.util.function.LongUnaryOperator;
public class ComposeExample {
public static void main(String[] args) {
// Define two LongUnaryOperators
LongUnaryOperator increment = (operand) -> operand + 1;
LongUnaryOperator doubleValue = (operand) -> operand * 2;
// Compose the operators
LongUnaryOperator incrementThenDouble = doubleValue.compose(increment);
long result = incrementThenDouble.applyAsLong(3L);
System.out.println("Result after incrementing and doubling: " + result);
}
}
Output:
Result after incrementing and doubling: 8
4. Real-World Use Case: Applying Discounts
In e-commerce applications, LongUnaryOperator can be used to apply discounts to product prices.
import java.util.function.LongUnaryOperator;
public class DiscountCalculator {
public static void main(String[] args) {
// Define a LongUnaryOperator to apply a 10% discount
LongUnaryOperator applyDiscount = (price) -> (long) (price * 0.9);
long discountedPrice = applyDiscount.applyAsLong(100L);
System.out.println("Discounted Price: " + discountedPrice);
}
}
Output:
Discounted Price: 90
Conclusion
The LongUnaryOperator interface is a practical tool in Java for transforming long values. It is particularly useful for mathematical calculations and data processing. Using LongUnaryOperator can lead to cleaner and more efficient code, especially in functional programming contexts. The andThen and compose methods allow for easy composition of operations, enhancing code modularity.
Comments
Post a Comment
Leave Comment