Bootstrap

获取数组中的最大值与最小值

代码如下:

	public static void main(String[] args){
		//创建一个数组
		int[] array = {1,454,56,67,234,556,78,34};
		//求数组的最大值
		int maxVal = getArrayMaxVal(array);
		//输出数组的最大值 
		System.out.println("数组array的最大值为:"+maxVal);
		
		//===========================================================================
		//求数组的最小值
		int minVal = getArrayMinVal(array);
		//输出数组的最大值 
		System.out.println("数组array的最小值为:"+minVal);
	}
	
	//求数组的最大值
	public static int getArrayMaxVal(int[] array){
		int max = array[0];							//获取数组的第一个值 
		for(int i = 1; i< array.length; i++){					//从数组的第二个值开始与max对比
			max = max > array[i] ? max : array[i];				//拿max与array[i]进行对比,并获取最大值
		}
		return max;								//返回最大值 
	}
	
	//求数组的最小值
	public static int getArrayMinVal(int[] array){
		int max = array[0];							//获取数组的第一个值 
		for(int i = 1; i< array.length; i++){					//从数组的第二个值开始与max对比
			max = max < array[i] ? max : array[i];				//拿max与array[i]进行对比,并获取最小值
		}
		return max;								//返回最小值 
	}

获取最大值 、最小值的方法解析

首先定义了一变量max去接收对比出来的最大值、最小值,给max变量的初始值为变量的第一个值 

int max = array[0]; 

然后对数组进行循环对比 ,因为数组的第一个值 已经赋给了max,所以,在进行对比时,就不拿数组的第一个值再与max对比了,因为没有意义,所以直接拿数组的第二值与max进行对比。在对比时,采用了三元运算。当然,这里也可以主使用if...else方法来进行判断,但代码量较多。所以我比较喜欢使用三元运算;

for(int i = 1; i < array.length; i++){

max = max > array[i] ? max : array[i]; //这句话的意思是,如果max 大于 array[i],那么就取max,否则,就取array[i]

}

用上面的循环进行遍历后,就可以得出数组的最大值 了,当然,如果把 max = array[i]?max : array[i];中的>换成<,取的就是最小值了。

最后,将获取的最大值 、最小值 返回给调用 方

return max;


结果为:

数组array的最大值为:556

数组array的最值为:1

















;