Write a Java program that returns the minimum and maximum of two numbers.
Java program to compute minimum and maximum of two numbers
import java.util.function.BinaryOperator;
public class Main {
private static final int I1 = -45;
private static final int I2 = -15;
private static final long L1 = 123L;
private static final long L2 = 3L;
private static final float F1 = 33.34F;
private static final float F2 = 33.213F;
private static final double D1 = 0.023844D;
private static final double D2 = 0.35468856D;
public static void main(String[] args) {
// compare two integers
int minII = Integer.min(I1, I2);
int minIM = Math.min(I1, I2);
int minIB = BinaryOperator.minBy(Integer::compare).apply(I1, I2);
int maxII = Integer.max(I1, I2);
int maxIM = Math.max(I1, I2);
int maxIB = BinaryOperator.maxBy(Integer::compare).apply(I1, I2);
System.out.println("\nCompare two integers:");
System.out.println("(" + I1 + ", " + I2 + "): BinaryOperator.minBy(): " + minIB + " BinaryOperator.maxBy():" + maxIB);
System.out.println("(" + I1 + ", " + I2 + "): Math.min(): " + minIM + " Math.max(): " + maxIM);
System.out.println("(" + I1 + ", " + I2 + "): Integer.min(): " + minII + " Integer.max(): " + maxII);
// compare two longs
long minLL = Long.min(L1, L2);
long minLM = Math.min(L1, L2);
long minLB = BinaryOperator.minBy(Long::compare).apply(L1, L2);
long maxLL = Long.max(L1, L2);
long maxLM = Math.max(L1, L2);
long maxLB = BinaryOperator.maxBy(Long::compare).apply(L1, L2);
System.out.println("\nCompare two longs:");
System.out.println("(" + L1 + ", " + L2 + "): BinaryOperator.minBy(): " + minLB + " BinaryOperator.maxBy():" + maxLB);
System.out.println("(" + L1 + ", " + L2 + "): Math.min(): " + minLM + " Math.max(): " + maxLM);
System.out.println("(" + L1 + ", " + L2 + "): Long.min(): " + minLL + " Long.max(): " + maxLL);
// compare two floats
float minFF = Float.min(F1, F2);
float minFM = Math.min(F1, F2);
float minFB = BinaryOperator.minBy(Float::compare).apply(F1, F2);
float maxFF = Float.max(F1, F2);
float maxFM = Math.max(F1, F2);
float maxFB = BinaryOperator.maxBy(Float::compare).apply(F1, F2);
System.out.println("\nCompare two floats:");
System.out.println("(" + F1 + ", " + F2 + "): BinaryOperator.minBy(): " + minFB + " BinaryOperator.maxBy():" + maxFB);
System.out.println("(" + F1 + ", " + F2 + "): Math.min(): " + minFM + " Math.max(): " + maxFM);
System.out.println("(" + F1 + ", " + F2 + "): Float.min(): " + minFF + " Float.max(): " + maxFF);
// compare two doubles
double minDD = Double.min(D1, D2);
double minDM = Math.min(D1, D2);
double minDB = BinaryOperator.minBy(Double::compare).apply(D1, D2);
double maxDD = Double.max(D1, D2);
double maxDM = Math.max(D1, D2);
double maxDB = BinaryOperator.maxBy(Double::compare).apply(D1, D2);
System.out.println("\nCompare two doubles:");
System.out.println("(" + D1 + ", " + D2 + "): BinaryOperator.minBy(): " + minDB + " BinaryOperator.maxBy():" + maxDB);
System.out.println("(" + D1 + ", " + D2 + "): Math.min(): " + minDM + " Math.max(): " + maxDM);
System.out.println("(" + D1 + ", " + D2 + "): Double.min(): " + minDD + " Double.max(): " + maxDD);
}
}
Output:
Compare two integers: (-45, -15): BinaryOperator.minBy(): -45 BinaryOperator.maxBy():-15 (-45, -15): Math.min(): -45 Math.max(): -15 (-45, -15): Integer.min(): -45 Integer.max(): -15 Compare two longs: (123, 3): BinaryOperator.minBy(): 3 BinaryOperator.maxBy():123 (123, 3): Math.min(): 3 Math.max(): 123 (123, 3): Long.min(): 3 Long.max(): 123 Compare two floats: (33.34, 33.213): BinaryOperator.minBy(): 33.213 BinaryOperator.maxBy():33.34 (33.34, 33.213): Math.min(): 33.213 Math.max(): 33.34 (33.34, 33.213): Float.min(): 33.213 Float.max(): 33.34 Compare two doubles: (0.023844, 0.35468856): BinaryOperator.minBy(): 0.023844 BinaryOperator.maxBy():0.35468856 (0.023844, 0.35468856): Math.min(): 0.023844 Math.max(): 0.35468856 (0.023844, 0.35468856): Double.min(): 0.023844 Double.max(): 0.35468856
Comments
Post a Comment