欢迎访问宙启技术站
智能推送

Java中如何使用函数找到最大值和最小值?

发布时间:2023-06-08 11:39:40

在编程中,找到最大值和最小值是很常见的任务。Java提供了一些内置函数来找到这些值。在本文中,我们将探讨在Java中如何使用这些函数来找到最大值和最小值。

1. 数组的最大值和最小值

最简单的方法是使用内置函数Arrays类中的“max()”和“min()”方法,这些方法可以分别找到数组中的最大值和最小值。下面是一个使用Arrays类来找到最大和最小值的简单示例:

import java.util.Arrays;

public class FindingMaxAndMinValuesInArray {
    public static void main(String[] args) {

        int[] myArray = { 10, -3, 67, 12, -5, 99 };

        int maxValue = Arrays.stream(myArray).max().getAsInt();
        int minValue = Arrays.stream(myArray).min().getAsInt();

        System.out.println("Max Value in myArray: " + maxValue);
        System.out.println("Min Value in myArray: " + minValue);
    }
}

输出:

Max Value in myArray: 99
Min Value in myArray: -5

在这个示例中,我们创建了一个大小为6的整型数组“myArray”并将其初始化为6个值。我们接下来使用“Arrays.stream()”函数将“myArray”转换为IntStream,然后使用内置函数“max()”和“min()”找到数组中的最大值和最小值。最后,我们将这些值打印出来。

另一个找到数组中最大和最小值的方法是通过简单的循环。以下是使用循环计算数组中最大和最小值的示例:

import java.util.Scanner;

public class FindingMaxAndMinValuesInArray {
    public static void main(String[] args) {

        int[] myArray = { 10, -3, 67, 12, -5, 99 };

        int maxValue = myArray[0];
        int minValue = myArray[0];

        for (int i = 1; i < myArray.length; i++) {
            if (myArray[i] > maxValue) {
                maxValue = myArray[i];
            }
            if (myArray[i] < minValue) {
                minValue = myArray[i];
            }
        }

        System.out.println("Max Value in myArray: " + maxValue);
        System.out.println("Min Value in myArray: " + minValue);
    }
}

输出:

Max Value in myArray: 99
Min Value in myArray: -5

在这个示例中,我们创建了一个大小为6的整型数组“myArray”并将其初始化为6个值。我们设置两个变量“maxValue”和“minValue”的初始值都为数组中的第一个元素。然后,我们循环遍历数组中的所有元素,并检查它们是否大于或小于当前的最大值和最小值。如果是,我们就更新相应的变量。最后,我们打印出数组中的最大值和最小值。

2. 找到两个数的最大值和最小值

我们可以使用Java中Math类的内置函数“max()”和“min()”找到给定两个数的最大值和最小值。以下是使用Math类来找到两个数的最大值和最小值的示例:

import java.util.Scanner;

public class FindingMaxAndMinValuesInTwoNumbers {
    public static void main(String[] args) {

        Scanner input = new Scanner(System.in);

        System.out.print("Enter first number: ");
        double num1 = input.nextDouble();

        System.out.print("Enter second number: ");
        double num2 = input.nextDouble();

        double maxNum = Math.max(num1, num2);
        double minNum = Math.min(num1, num2);

        System.out.println("Max Number: " + maxNum);
        System.out.println("Min Number: " + minNum);

        input.close();
    }
}

输出:

Enter first number: 78.9
Enter second number: -45.6
Max Number: 78.9
Min Number: -45.6

在这个示例中,我们从用户输入中获得两个双精度数字,并使用“Math.max()”和“Math.min()”找到它们的最大值和最小值。最后,我们将这些值打印出来。

3. 找到三个或更多数的最大值和最小值

当我们需要在三个或更多数字之间找到最大值和最小值时,我们可以使用以下公式:

maxNum = Math.max(Math.max(num1, num2), num3);
minNum = Math.min(Math.min(num1, num2), num3);

这里我们使用了嵌套的“Math.max()”和“Math.min()”函数以找到三个数字中的最大值和最小值。如果有更多数字,我们可以在函数中添加更多参数。

以下是使用Java中Math类的内置函数来找到三个数字的最大值和最小值的示例:

import java.util.Scanner;

public class FindingMaxAndMinValuesInThreeNumbers {
    public static void main(String[] args) {

        Scanner input = new Scanner(System.in);

        System.out.print("Enter first number: ");
        double num1 = input.nextDouble();

        System.out.print("Enter second number: ");
        double num2 = input.nextDouble();

        System.out.print("Enter third number: ");
        double num3 = input.nextDouble();

        double maxNum = Math.max(Math.max(num1, num2), num3);
        double minNum = Math.min(Math.min(num1, num2), num3);

        System.out.println("Max Number: " + maxNum);
        System.out.println("Min Number: " + minNum);

        input.close();
    }
}

输出:

Enter first number: -3
Enter second number: 56
Enter third number: 12.5
Max Number: 56.0
Min Number: -3.0

在这个示例中,我们从用户输入中获取三个双精度数字,并使用“Math.max()”和“Math.min()”嵌套函数找到它们的最大值和最小值。最后,我们将这些值打印出来。

综上所述,Java使用内置函数来找到最大值和最小值是很简单的。您只需要知道哪些函数用于查找和如何在程序中使用它们,就可以轻松完成任务。从上面的示例中,您现在应该知道如何使用函数来查找数组、两个和三个数字的最大值和最小值。