如何从整数数组中找到最大和最小数

19-01-24 jdon
         

对于任何软件开发人员来说,很好地理解数组数据结构都是非常重要的,为了发展这种理解,初学者可以做很多编程练习。其中之一是编写一个程序来查找整数数组中最小和最大的数字。Java程序员与其他程序员没有什么不同,因此他们可以用Java来完成这个程序,而不仅仅是为了理解数组,而且也可以使用Java中的关系操作符。在这个程序中,您需要编写一个方法,是的,我们调用函数Java中的一个方法,它将接受整数数组,然后从该数组中打印最大和最小的数字。不允许使用任何第三方库或API方法,这意味着您需要使用Java编程语言的基本工具来完成此练习,该工具包括运算符,控制语句,关键字和java.lang包中的一些类。

这个问题也被称为在数组中查找最大值和最小值,这里提到的技术也可以用在任何其他编程语言中。另外,您还可以编写JUnit测试用例来测试您的方法,我还没有这样做,依靠简单的主要方法来测试我的代码以显示输出并保持简短,这对于任何示例或演示都是必不可少的。

求整数数组中最小和最大数的Java程序

这里是Java程序的完整代码示例,用于从整数数组中找到最小和最大数。您可以创建一个名为MaimuMimuMulaRayDeMo.java的Java源文件,并在其中复制代码,在您最喜欢的IDE中编译和执行。如果您没有IDE安装程序,您还可以通过在Java中的HeloRoWord上显示的步骤编译和运行这个程序。

如果您查看这里的代码,我们已经创建了一个名为largesandwritest(intnumbers)的方法来打印传递给程序的int数组中的最大和最小数字。我们使用最大和最小两个变量来存储数组中的最大值和最小值。最初使用Integer.MIN_VALUE初始化最大值,使用Integer.MAX_VALUE初始化最小值。

在循环的每个迭代中,我们将当前数字与最大值和最小值进行比较,并相应地更新它们。因为如果一个数字大于最大值,它不能小于最小值,这意味着您不需要检查第一个条件是否为真,这就是为什么我们使用if else代码块,而其他部分只在第一个条件不为真时执行。

用Java程序查找数组中最大和最小的元素:

import java.util.Arrays;
/**
 * Java program to find largest and smallest number from an array in Java.
 * You cannot use any library method both from Java and third-party library.
 *
 * @[author]author[/author] http://java67.blogspot.com
 */
public class MaximumMinimumArrayDemo{

    public static void main(String args) {
        largestAndSmallest(new int{-20, 34, 21, -87, 92,
                             Integer.MAX_VALUE});
        largestAndSmallest(new int{10, Integer.MIN_VALUE, -2});
        largestAndSmallest(new int{Integer.MAX_VALUE, 40,
                             Integer.MAX_VALUE});
        largestAndSmallest(new int{1, -1, 0});
    }

    public static void largestAndSmallest(int numbers) {
        int largest = Integer.MIN_VALUE;
        int smallest = Integer.MAX_VALUE;
        for (int number : numbers) {
            if (number > largest) {
                largest = number;
            } else if (number < smallest) {
                smallest = number;
            }
        }

        System.out.println("Given integer array : " + Arrays.toString(numbers));
        System.out.println("Largest number in array is : " + largest);
        System.out.println("Smallest number in array is : " + smallest);
    }
}

Output:

Given integer array : [-20, 34, 21, -87, 92, 2147483647]
Largest number in array is : 2147483647
Smallest number in array is : -87
Given integer array : [10, -2147483648, -2]
Largest number in array is : 10
Smallest number in array is : -2147483648
Given integer array : [2147483647, 40, 2147483647]
Largest number in array is : 2147483647
Smallest number in array is : 40
Given integer array : [1, -1, 0]
Largest number in array is : 1
Smallest number in array is : -1

这就是如何在Java中从整数数组中找到最大和最小数的问题。顺便说一句,有更多的方法来完成相同的任务。你能写一个不同的解决方案吗?去试一试吧。