周而复始3
2016-12-09 11:10
public class n{
public static void main(String[] args) {
// 定义一个整型数组,并赋初值
int[]nums=new int[]{ 61, 23, 4, 74, 13,148,20};
int max = nums[0]; // 假定最大值为数组中的第一个元素
int min = nums[0]; // 假定最小值为数组中的第一个元素
double sum = 0;// 累加值
double avg = 0;// 平均值
for (int i = 0; i < nums.length; i++) { // 循环遍历数组中的元素
// 如果当前值大于max,则替换max的值
if(max<nums[i]){
max=nums[i];
}
// 如果当前值小于min,则替换min的值
if(min>nums[i]){
min=nums[i];
}
System.out.println(nums[i]);
}
}
}
本节课内容中有如果比假定的最大值要大,则替换当前的最大值;如果比假定的最小值要小,则替换当前的最小值的功能,那为什么我这时候输出数组,顺序还是和原来的一样呢?
数组的顺序是不会变得,除非你重新排序了,这块只是比较而已,将最大、最小的值分别赋值给max,min,并没有哪一步操作是改变顺序的。
没有跳出for循环,System.out.println(nums[i]);应该在for循环外边的的{}中,其次你的System.out.println(num[i]);是将数组中的数循环输出,应该把num[i]换成已经赋值过的 min和max。
Java入门第一季(IDEA工具)升级版
1167351 学习 · 18629 问题
相似问题