- Java code
class text{ public static void main(String[] args) { int[] arr={1,2,3,4,5,6}; System.out.println("数组中最小值为:"+ getMin(arr)); } public static int getMin(int[] arr) { int n=arr[0]; for(int i=0;i<arr.length;i++) { if( arr[i]<n) { n=arr[i]; } } return n; }}
getMin(int[] arr)这个方法的实现不是很明白,搞不懂是如何找出最小值的,尤其是那个int n=arr[0]有什么作用呢,问什么要用arr[0]呢,为什么是0而不是其他呢,困惑啊帮帮我!!!
------解决方案--------------------------------------------------------
可以用别的,主要作用是有一个初始值,而不是随意设置一个值(当然也可以):
- Java code
public static int getMin(int[] arr) { int n=arr[arr.length-1]; for(int i=0;i<arr.length-1;i++) { if( arr[i]<n) n=arr[i]; } return n;}
------解决方案--------------------------------------------------------
int n=arr[0];
int n可以在数组中随便取值 (甚至可以是其它值的)
楼主可以这样理解:
假设n此时是最小值
拿n去和和数组中的每个数比较
当数组中有数比n小时 则改变最小值n为这个数
然后用n再去比较
知道循环结束 此时n当然是最小值