Java如何打印数组长度、元素最小值与最大值
Java数组长度、最值打印实现
你原有代码存在3个核心错误:
- 数组下标访问语法错误,Java数组不支持多参数下标写法,
results[lenght,Integer.MIN_VALUE,Integer.MAX_VALUE]属于非法语法 - 拼写错误:不存在
lenght属性,数组长度的正确属性名是length - 缺失最值计算逻辑:没有遍历数组逐个比对元素值的过程,无法得到最大、最小值
基础手动实现(无额外依赖)
逻辑非常直接:
- 数组长度直接通过数组自带的
length属性获取,不需要额外计算 - 最值通过遍历数组逐个比对更新得到,初始值可以分别设为整型的最大值、最小值作为兜底
完整可运行代码:
public class ArrayCalc { public static void main(String[] args) { int results[] = new int[13]; results[0]=19; results[1]=22; results[2]=21; results[3]=25; results[4]=32; results[5]=38; results[6]=16; results[7]=31; results[8]=30; results[9]=26; results[10]=19; results[11]=17; results[12]=23; // 获取数组长度 int totalCount = results.length; // 初始化最值变量 int min = Integer.MAX_VALUE; int max = Integer.MIN_VALUE; // 遍历数组更新最值 for (int currentNum : results) { if (currentNum < min) { min = currentNum; } if (currentNum > max) { max = currentNum; } } // 输出结果 System.out.println("数组元素总个数:" + totalCount); System.out.println("数组最小值:" + min); System.out.println("数组最大值:" + max); } }
运行输出:
数组元素总个数:13 数组最小值:16 数组最大值:38
JDK工具类简化实现(JDK1.8+可用)
如果不需要手动实现遍历逻辑,可以直接用Arrays类的流操作快速计算,使用前需要先导入对应包:
import java.util.Arrays; // 直接计算最值 int min = Arrays.stream(results).min().getAsInt(); int max = Arrays.stream(results).max().getAsInt(); // 数组长度仍然通过results.length获取即可
内容的提问来源于stack exchange,提问作者Sergio Palomino
相关产品推荐
相关产品推荐

