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日

相关文章

  • 2021最新Java JDK1.8的安装超详细教程

    2021最新Java JDK1.8的安装超详细教程 简介 Java JDK是开发和运行Java程序的必备工具。本文将详细介绍如何安装最新版的Java JDK1.8,并包含一些实例,帮助您更好的理解和使用Java JDK。 步骤 步骤1:下载安装包 首先,您需要下载Java JDK1.8的安装包。您可以通过以下链接下载: Java JDK1.8官方下载页面 请…

    Java 2023年5月19日
    00
  • Java命名规则详细总结

    Java命名规则详细总结 Java是一门强类型语言,命名规则是Java语言编写中一个非常重要的方面。正确的命名规则可以使代码更易于理解和维护。本文将详细总结Java命名规则,包括标识符的命名规则和Java类库的命名规则。 标识符的命名规则 在Java编程中,标识符是变量、常量、方法、类等的名称,合法的标识符应该遵循以下规则: 标识符只能由字母、数字和下划线(…

    Java 2023年5月26日
    00
  • 使用maven如何将项目中的test代码打包进jar中

    使用 Maven 将项目中的 test 代码打包进 jar 中,可以实现在发布项目时一并发布 test 代码,方便其他人也能进行测试。下面是具体的步骤: 在 pom.xml 文件中添加以下代码,指定将 test 代码打包进 jar 中: <build> <plugins> <plugin> <groupId>o…

    Java 2023年5月20日
    00
  • Java 11 正式发布,这 8 个逆天新特性教你写出更牛逼的代码

    Java 11 正式发布,这 8 个逆天新特性教你写出更牛逼的代码 Java 11于2018年9月正式发布,带来了一些令人兴奋的新特性和功能。在本文中,我们将介绍Java 11的八个强大的新特性,并给出一些示例,以帮助您更好地理解它们的使用方式。 1. HttpClient API Java 11引入了一个全新的HTTP客户端API,该API支持异步和基于事…

    Java 2023年5月20日
    00
  • 说说Java异步调用的几种方式

    下面我将详细讲解Java异步调用的几种方式及其示例: 什么是异步调用 异步调用是指在调用函数时,不会等待函数执行完成才返回结果,而是在函数执行的同时继续执行其他的代码,当函数执行完成后再回过头来处理执行结果。通常用于需要耗时的操作,如网络请求、数据库查询等,可以避免阻塞主线程而影响用户体验。 Java异步调用的几种方式 1. 回调函数 回调函数是指在调用函数…

    Java 2023年5月19日
    00
  • AngularJS使用ngOption实现下拉列表的实例代码

    下面是针对“AngularJS使用ngOption实现下拉列表的实例代码”的详细攻略: 什么是ngOptions? 在AngularJS中,我们可以使用ngOptions指令来创建下拉列表(\元素),并且ngOptions可以带来一些很好的特性: 可绑定多个选项,并可以动态地加载和更新选项列表。 允许你设置选项值、标签和其他属性。 提供一些便于创建复杂下拉列…

    Java 2023年6月15日
    00
  • 浅谈SpringBoot内嵌Tomcat的实现原理解析

    浅谈SpringBoot内嵌Tomcat的实现原理解析 简介 SpringBoot是一个用于快速构建应用程序的框架,它使用内嵌的Tomcat作为默认的Web容器。那么,SpringBoot内嵌Tomcat的实现原理是什么呢?本文旨在解析SpringBoot内嵌Tomcat的实现原理,帮助您更好地了解SpringBoot的底层实现。 SpringBoot内嵌T…

    Java 2023年6月2日
    00
  • java中进制的转换,Byte与16进制的转换方法

    Java中可以通过一些方法来进行进制转换,其中包括Byte与16进制的转换方法。下面我们详细来讲解Java中进制的转换以及Byte与16进制的转换方法。 进制的转换 在Java中,我们可以通过四种进制(二进制,八进制,十进制,十六进制)之间进行相互转换。以下是简单介绍每种进制的标识符: 二进制:以0b或0B开头,例如0b1010表示10。 八进制:以0开头,…

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