You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java查找最小数程序中smallest变量与if语句执行流程咨询

程序完整执行流程
  • 初始化输入工具Scanner和存储用户输入整数的ArrayList<Integer>集合
  • 进入无限输入循环:每次读取用户输入的整数,若输入值为9999则终止循环,否则将输入的整数存入集合
  • 初始化smallest变量,将集合的第一个元素作为初始最小值赋值给它
  • 遍历集合的所有元素:
    • 取出当前下标对应的元素存到临时变量number中
    • 执行if判断:如果当前记录的最小值smallest大于当前元素number,则将smallest更新为number的值
  • 遍历结束后,打印最终的smallest值(即用户输入的所有非9999整数里的最小值)
smallest变量与对应if语句的作用

smallest变量作用

是遍历找最小值逻辑的临时存储载体,全程记录遍历到当前位置为止的最小数值。
初始化时赋值为集合第一个元素,本质是先假设第一个元素是最小值,后续通过比对逐步修正这个值。

对应if语句if (smallest > number)的作用

这个判断是修正最小值的核心逻辑:每次比对当前遍历到的元素和已记录的最小值,如果当前元素更小,就更新smallest的值,保证smallest永远存储的是已经遍历过的所有元素里的最小值。

举个实际运行示例更便于理解,假设用户依次输入了5、3、9、1、4、9999,集合存储内容为[5,3,9,1,4]:

初始smallest = 第一个元素5
遍历到下标1的元素3:5>3判断成立,smallest更新为3
遍历到下标2的元素9:3>9判断不成立,不更新
遍历到下标3的元素1:3>1判断成立,smallest更新为1
遍历到下标4的元素4:1>4判断不成立,不更新
遍历结束,输出的smallest为1,就是整个集合的最小值

内容的提问来源于stack exchange,提问作者Brotzi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 21:42:00