当我们需要在一个数组中寻找最大值或最小值时,我们可以采用循环遍历数组的方式,比较每一个元素和当前最大或最小值的大小,然后更新最大或最小值。以下是用JAVA实现这个过程的简单实例。
准备工作
首先,我们需要准备一个需要查找的数组。我们可以在代码中手动定义一个数组,例如:
int[] myArray = {5, 12, 8, 19, 3, 16};
或者,也可以通过用户输入方式获得一个数组。示例代码如下:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入数组长度: ");
int length = scanner.nextInt();
int[] myArray = new int[length];
System.out.println("请输入数组元素: ");
for (int i = 0; i < length; i++) {
myArray[i] = scanner.nextInt();
}
scanner.close();
}
}
获取数组的最大值和最小值
接下来,我们需要编写一个方法,这个方法可以接收一个数组作为参数,然后返回这个数组的最大值和最小值。示例代码如下:
public class Main {
public static void main(String[] args) {
int[] myArray = {5, 12, 8, 19, 3, 16};
int[] result = getMinMax(myArray);
System.out.println("最小值为:" + result[0]);
System.out.println("最大值为:" + result[1]);
}
public static int[] getMinMax(int[] array) {
int min = array[0];
int max = array[0];
for (int i = 1; i < array.length; i++) {
if (array[i] < min) {
min = array[i];
}
if (array[i] > max) {
max = array[i];
}
}
int[] result = {min, max};
return result;
}
}
上述代码中,我们首先定义了一个整型数组 result
用来存储最小值和最大值,然后在 getMinMax
方法中定义了两个变量 min
和 max
,将数组的第一个元素赋值给它们。接着通过循环遍历整个数组,比较每个元素和 min
或 max
的值,如果当前值小于 min
,则更新 min
的值;如果当前值大于 max
,则更新 max
的值。最后,将最小值和最大值存储在 result
数组中并返回。
示例说明
示例一
在 getMinMax
方法中可以采用其他方式实现获取最大值和最小值,例如使用 JDK 自带工具类中的 Arrays
类。示例如下:
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
int[] myArray = {5, 12, 8, 19, 3, 16};
int[] result = getMinMax(myArray);
System.out.println("最小值为:" + result[0]);
System.out.println("最大值为:" + result[1]);
}
public static int[] getMinMax(int[] array) {
Arrays.sort(array);
int[] result = {array[0], array[array.length - 1]};
return result;
}
}
示例二
在获取最大值和最小值的过程中,我们还可以加入一些其他的条件判断。例如,如果数组长度为 0 时,直接返回 null。同时,我们也可以使用 Java 8 中提供的流式编程方式获取最大值和最小值。示例如下:
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
int[] myArray = {5, 12, 8, 19, 3, 16};
int[] result = getMinMax(myArray);
System.out.println("最小值为:" + result[0]);
System.out.println("最大值为:" + result[1]);
}
public static int[] getMinMax(int[] array) {
if (array.length == 0) {
return null;
}
int min = Arrays.stream(array).min().getAsInt();
int max = Arrays.stream(array).max().getAsInt();
int[] result = {min, max};
return result;
}
}
上述代码中,在 getMinMax
方法中我们首先判断了数组长度是否为 0,如果是,则直接返回 null。接着,我们使用 Arrays.stream
方法将数组转换成一个流,并调用 min
和 max
方法获取最小值和最大值。最后,将最小值和最大值存储在 result
数组中并返回。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JAVA得到数组中最大值和最小值的简单实例 - Python技术站