Math.min
和 Math.max
是 Java 标准库中 java.lang.Math
类的一部分,用于比较两个数值并返回其中的最小值或最大值。
Math.min
Math.min
方法用于返回两个数值中的较小值。它有多个重载版本,可以处理不同类型的数值(如 int
, long
, float
, double
)。
用法
public static int min(int a, int b)
public static long min(long a, long b)
public static float min(float a, float b)
public static double min(double a, double b)
示例
int minInt = Math.min(3, 5); // 返回 3
long minLong = Math.min(10L, 20L); // 返回 10
float minFloat = Math.min(1.5f, 2.5f); // 返回 1.5
double minDouble = Math.min(4.5, 3.5); // 返回 3.5
Math.max
Math.max
方法用于返回两个数值中的较大值。它也有多个重载版本,可以处理不同类型的数值(如 int
, long
, float
, double
)。
用法
public static int max(int a, int b)
public static long max(long a, long b)
public static float max(float a, float b)
public static double max(double a, double b)
示例
int maxInt = Math.max(3, 5); // 返回 5
long maxLong = Math.max(10L, 20L); // 返回 20
float maxFloat = Math.max(1.5f, 2.5f); // 返回 2.5
double maxDouble = Math.max(4.5, 3.5); // 返回 4.5
主要特点
- 类型安全:
Math.min
和Math.max
方法有多个重载版本,确保可以处理不同类型的数值。 - 简单易用:只需传入两个数值,方法会返回其中的最小值或最大值。
- 性能高效:这些方法是静态方法,直接调用
Math
类即可,无需实例化对象。
典型应用场景
- 边界检查:确保数值在某个范围内。例如,限制用户输入的数值不超过某个最大值或不低于某个最小值。
- 比较操作:在算法实现中,常常需要比较两个数值并选择其中的较大值或较小值。
代码示例
以下是一个使用 Math.min
和 Math.max
的示例,确保一个数值在指定范围内:
public class Main {
public static void main(String[] args) {
int value = 10;
int minValue = 5;
int maxValue = 15;
// 确保 value 在 minValue 和 maxValue 之间
int boundedValue = Math.max(minValue, Math.min(value, maxValue));
System.out.println("Bounded Value: " + boundedValue); // 输出: Bounded Value: 10
}
}
在这个示例中,Math.min
和 Math.max
被用来确保 value
在 minValue
和 maxValue
之间。