首页 > 其他分享 >实例 042 获取一维数组最小值

实例 042 获取一维数组最小值

时间:2023-05-04 18:14:20浏览次数:33  
标签:arr 一维 min int 代码 最小值 数组 042

  你可以使用以下代码来获取一维数组中的最小值:

int[] arr = {5, 3, 9, 1, 7};
int min = arr[0];

for (int i = 1; i < arr.length; i++) {
    if (arr[i] < min) {
        min = arr[i];
    }
}

System.out.println("最小值为:" + min);

  在上面的代码中,我们首先初始化了一个名为arr的整数数组,并将一些值存入其中。然后,我们初始化一个min变量,并将其设置为数组中的第一个元素。

  之后,我们使用了一个for循环来遍历数组中的剩余元素。在每次迭代时,我们检查当前元素是否小于min变量的值。如果是,则将min更新为该元素。

  最后,我们输出最小值 min 的计算结果。

  总体而言,在上面代码实现基础上可以考虑加入如下判断条件:

if(arr == null || arr.length==0) {
    return -1; // 数组为空或者长度为零返回-1表示不存在最大值;
}

  这样即可对输入进行特殊情况处理并增强程序健壮性

最简洁的方法是使用Java 8引入的Stream API,通过一行代码实现查找最小值。

代码如下:

import java.util.Arrays;

public class Main {
    public static void main(String[] args) {
        int[] nums = {3, 5, -2, 10};
        
        // 使用Arrays.stream()将int数组转换为IntStream流,并调用min()获取最小值。
        int minValue = Arrays.stream(nums).min().getAsInt();

         System.out.println("The minimum value is: " + minValue); // 输出:The minimum value is: -2

    }
}

这种方式不需要创建新对象或进行数据类型转换,也没有副作用(比如改变原始数组顺序),并且非常简洁。但是由于要涉及到Lambda表达式和函数式编程概念,在理解上可能会有些困难。

标签:arr,一维,min,int,代码,最小值,数组,042
From: https://www.cnblogs.com/SwapEnd/p/17372109.html

相关文章

  • 0427
    今天还是打了号爸的模拟赛,T3一个小时没调出来……只能说概率期望还是太抽象,而我又太缺少脑子了……(赛后5分钟发现T3就是个小细节错了)。过程花了10分钟看题,T1是个简单数数题,讨论了一下,先写了个暴力验证正确性,再优化到O(T(x+y)),大概在8:40搞定。T2要数旋转同构的东西,肯定......
  • smarty section循环显示一维数组元素
    <?phpheader("Content-type:text/html;charset=utf-8");//设置中国时区date_default_timezone_set('PRC');require_once("./Smarty/libs/Smarty.class.php");$smarty=newSmarty();$smarty->left_delimiter="<{";$sm......
  • 20230429 模拟赛(jnxxhzz)
    T1.神奇零食柜略,oj上交要加快读T2.防御工事数据范围:\(1\len,m\le100\)不难想到是网络流(虽然我没想到……)这是一个挺基础的网络流对于每个\(V\),我们将它们连到一个超级源点上在往它的四个方向分别建边最后把所有的\(M\)连到一个汇点上而在建边时注意其实\(E->E\)的边......
  • C/C++ 各类型int、long、double、char、long long取值范围(基本类型的最大最小值)
    做题的时候经常会使用到数据类型的最大最小值(如int,long,longlong,char等),我也查了很多次,这次就记下来当笔记吧。参考了C++primeplus、各个博客、教程和c++官网,对C/C++中各个类型int、long、double、char、longlong等基本类型的取值范围即最大最小值总结如下:1字节=8位,......
  • Hugging News #0428: HuggingChat 来啦
    每一周,我们的同事都会向社区的成员们发布一些关于HuggingFace相关的更新,包括我们的产品和平台更新、社区活动、学习资源和内容更新、开源库和模型更新等,我们将其称之为「HuggingNews」,本期HuggingNews有哪些有趣的消息,快来看看吧!HuggingChat来啦!我们认为需要有一个Ch......
  • 【230429-4】求所有仅由1,2,3,4,5组成的没有重复数字的四位数的和
    【数学解法】由1,2,3,4,5组成的没有重复数字的四位数有A54=120个以千位为例,在此出现的1,2,3,4,5的几率是均等的,即每个数都出现了120/5=24次。也就是说,120个数的千位加起来是(1*24+2*24+3*24+4*24+5*24)*1000=15*24*1000同样的道理,120个数的百位加起来是(1*24+2*24+3*24+4*24+5*24)*100=15*2......
  • 【230429-3】证明:任意给出九个空间格点,其至少有一对格点的奇偶性相同,且其中点坐标亦为
    【名词解释:格点】格点即三坐标都为整数的空间点,因其位置在虚拟的网格上故称格点。【格点奇偶性的八种情况】代码证明:packagetest230429;/***按奇偶性确定空间中格点的种类*格点,即xyz三坐标皆为整数的空间点*xyz为奇偶各有两种可能性,整体便有2^3=8种*8种意味着:一旦点......
  • 【230429-2】用三重循环输出立方体的八个顶点坐标
    【代码】packagetest230429;/***输出立方体的八个顶点坐标*边长为a的立方体一角在(0,0,0),其对角在(a,a,a),求所有顶点的坐标*这是一个可重排列问题,在2阶集合{"0","a"}中进行3次选取。*使用三重循环即可解决此问题。*/publicclassCubeTops{publicstaticvoid......
  • 总结20230428
    代码时间(包括上课):1h代码量(行):30行博客数量(篇):1篇相关事项:1、今天上午第一节课是计算机网络,开启了运输层的新篇章。2、今天上午第二节是概率论,讲的是概率论的方差、协方差、相关系数等知识。3、今天晚上打算在学一点Javaweb的知识。......
  • 20042124_chappie
    [换成自己的源]docker-machinesshdefaultsed-i"s|EXTRA_ARGS='|EXTRA_ARGS='--registry-mirror=https://2w188x2k.mirror.aliyuncs.com|g"/var/lib/boot2docker/profileexitdocker-machinerestartdefault [打开rknndocker]dockerrun-t-i--privilege......