JAVA得到数组中最大值和最小值的简单实例

当我们需要在一个数组中寻找最大值或最小值时,我们可以采用循环遍历数组的方式,比较每一个元素和当前最大或最小值的大小,然后更新最大或最小值。以下是用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 方法中定义了两个变量 minmax,将数组的第一个元素赋值给它们。接着通过循环遍历整个数组,比较每个元素和 minmax 的值,如果当前值小于 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 方法将数组转换成一个流,并调用 minmax 方法获取最小值和最大值。最后,将最小值和最大值存储在 result 数组中并返回。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JAVA得到数组中最大值和最小值的简单实例 - Python技术站

(0)
上一篇 2023年5月26日
下一篇 2023年5月26日

相关文章

  • 常用的java日期比较和日期计算方法小结

    当涉及处理日期和时间时,Java内置了许多日期类和方法来进行各种操作。在本文中,我们将探讨一些常用的日期比较和日期计算方法,这些方法可以帮助我们在Java中轻松处理各种日期和时间相关的操作。 比较日期 在Java中比较日期的最常用方法是使用compareTo方法。这个方法将返回一个整数,表示两个日期之间的差异。如果第一个日期在第二个日期之前,返回的整数将小于…

    Java 2023年5月20日
    00
  • java.lang.Runtime.exec的左膀右臂:流输入和流读取详解

    Java提供了Runtime.exec()方法来启动一个新进程。该方法可以返回Process对象,通过该对象可以控制和管理子进程的输入、输出以及错误流。这个方法中的参数是一个字符串,它描述了一个shell命令,应该如何来运行这个新的子进程。 为了更好地使用exec()方法,在使用exec()的时候,我们应该学会: 1.正确处理进程输出 2.合并输出流,正确地…

    Java 2023年5月26日
    00
  • SpringBoot接口接收json参数解析

    接下来我将为你详细讲解SpringBoot接口接收Json参数解析的完整攻略,包含以下流程: 创建SpringBoot项目 定义数据模型 定义控制器 确定请求方式 接收与解析Json参数 处理请求数据 接下来将逐步讲解每一个步骤。 1. 创建SpringBoot项目 我们首先需要创建一个SpringBoot项目,可以使用Spring官方提供的Spring I…

    Java 2023年5月20日
    00
  • 老生常谈计算机中的编码问题(必看篇)

    老生常谈计算机中的编码问题(必看篇) 简介 计算机中的编码问题是计算机领域长期存在的老生常谈问题之一。这个问题的本质是计算机内部和外部传输的信息都需要以某种编码方式呈现,而不同的编码方式之间可能存在互相转换的问题,容易引起信息传输和解读上的困难。 常见编码方式 常见的计算机编码方式包括ASCII编码、Unicode编码和UTF-8编码等。其中: ASCII编…

    Java 2023年5月20日
    00
  • Springboot FatJa原理机制源码解析

    Springboot FatJar原理机制源码解析 什么是Springboot FatJar Springboot FatJar是一种打包方式,它将应用程序及其所有依赖库打包到一个可执行的JAR文件中。这样,我们只需要一个JAR文件就能部署整个应用程序到服务器上,而无需考虑依赖库的配置问题。同时,FatJar还具有开箱即用的特点,即使是在没有安装任何JDK或…

    Java 2023年5月19日
    00
  • java编译命令基础知识点

    下面就来详细讲解一下Java编译命令的基础知识点,本次讲解分为以下几个部分: Java编译命令介绍 Java编译命令参数解释 Java编译命令示例 Java编译命令介绍 Java编译命令是指使用Java命令行工具(Command Prompt、Terminal等)来将Java源文件编译成可执行的Java字节码文件的命令。 Java编译命令的格式为:javac…

    Java 2023年5月20日
    00
  • java连接mysql底层封装详解

    Java连接MySQL是Java Web开发中最重要的一个环节。为了方便开发,我们通常会使用Maven或Gradle等构建工具引入一些常用的Java数据库连接库,如JDBC或MyBatis等。这些库本质上都是对Java JDBC API的封装,它们封装了大量的底层API,使我们能够更加方便地操作数据库。本文将围绕着Java连接MySQL展开,对其底层封装进行…

    Java 2023年5月19日
    00
  • Java实现5种负载均衡算法(小结)

    Java实现5种负载均衡算法(小结) 什么是负载均衡 负载均衡是分布式系统中常用的一种技术,用于将请求分发到多个计算机资源上,以达到平衡负载的效果。通过负载均衡技术,能够提高系统的可用性、可伸缩性和性能。 为什么需要负载均衡 在分布式系统中,有时一个计算节点无法满足系统的负载需求,而此时采用多个节点共同处理请求则成为了必要。负载均衡技术将请求分发到多个节点上…

    Java 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部