导航:首页 > 编程语言 > java求最大值和最小值

java求最大值和最小值

发布时间:2025-03-08 05:55:09

Ⅰ 各位大哥帮我看看用java在数组中求出最大值和最小值为什么粗错

在数组中寻找最大值和最小值时,直接使用arr[arr.length-1]和arr[0]作为初始值可能会导致错误。正确的做法应该是首先初始化最小值为数组的第一个元素,最大值为数组的最后一个元素,然后遍历数组进行比较。例如:

java
int min = arr[0];
int max = arr[arr.length-1];
for(int i = 1; i < arr.length; i++) {
if(arr[i] < min) {
min = arr[i];
}
if(arr[i] > max) {
max = arr[i];
}
}
System.out.println("最小值为" + min);
System.out.println("最大值为" + max);

这样可以避免初始值选择不当带来的错误。同时,使用两层循环确实会浪费资源,尤其是当数组较大时。单层循环即可完成任务,提高效率。

如果你的代码中使用了两层循环,例如:

java
for(int i = 0; i < arr.length; i++) {
for(int j = 0; j < arr.length; j++) {
if(arr[i] < arr[j]) {
min = arr[i];
max = arr[j];
}
}
}

这显然是不必要的复杂,不仅效率低,还容易出错。通过优化,可以大大提升代码的性能和可读性。

总之,寻找数组中的最大值和最小值时,应该避免不必要的复杂性和错误的选择,采用合适的方法进行优化。

Ⅱ java利用数组求最大值,最小值,平均值,进

  1. 传统的做法就是for循环, 通过循环比较得到最小值,最大值. 通过累加的和除以个数等于平均值

  2. 比较新的做法就是Java8 的流操作. 可以更方便快捷的得到最大,最小和平均值

参考代码如下

importjava.util.Arrays;
importjava.util.IntSummaryStatistics;
importjava.util.stream.Collectors;

publicclassArrayDemo{
publicstaticvoidmain(String[]args){
Integer[]nums={6,5,7,8};
test1(nums);
System.out.println("----分割线---");
test2(nums);

}
//传统的处理方法
publicstaticvoidtest1(Integer[]nums){
intmax=Integer.MIN_VALUE;
intmin=Integer.MAX_VALUE;
intsum=0;
for(Integernum:nums){
if(num>max){
max=num;
}
if(num<min){
min=num;
}
sum+=num;
}
doubleavg=sum*1.0/nums.length;
System.out.println("最大值:"+max);
System.out.println("最小值:"+min);
System.out.println("平均值:"+avg);

}

//Java8开始的stream操作
publicstaticvoidtest2(Integer[]nums){
IntSummaryStatisticsresults=Arrays.stream(nums).collect(Collectors.summarizingInt(e->e));
intmax=results.getMax();//获取最大值
System.out.println("最大值:"+max);
intmin=results.getMin();
System.out.println("最小值:"+min);
doubleavg=results.getAverage();
System.out.println("平均值:"+avg);
}
}
阅读全文

与java求最大值和最小值相关的资料

热点内容
全无油润滑压缩机 浏览:183
代码加密常用方法 浏览:952
安卓手机如何解除已禁用 浏览:396
算法的随机性 浏览:485
高中解压体育游戏 浏览:533
androidstudior丢失 浏览:345
命令行笔记 浏览:737
360目标文件夹访问拒绝 浏览:518
3b编程加工指令 浏览:789
c8051f系列单片机选型手册 浏览:772
南昌php程序员 浏览:511
bcs命令 浏览:446
如何在服务器指向域名 浏览:417
车床编程可以做刀吗 浏览:519
ln命令源码 浏览:792
用粘液做解压手套 浏览:331
icloud收信服务器地址 浏览:500
编程思考者 浏览:453
压缩机型号用什么氟利昂 浏览:553
农机空气压缩机 浏览:666