下面展示一下求最大值的思路:
package Test;
public class ArrTest {
public static void main(String[] args) {
// 这里有两个数组
int[]arr1={5,44,33,55,22};
int[]arr2={66,44,67,86,99};
// 定义一个变量接受方法得出的数据
int max=ageMax(arr1);
System.out.println(max);
}
/*
需求:已知数组元素为{5,44,33,55,22}请找出最大值并打印在控制台
分析:
1.找第一个元素上台。(假设第一个元素就是最大值)
2.遍历数组,获取到每一个元素
3.逐个比较
4.记录更大的元素
*/
// 加入一个形参调用数据
public static int ageMax( int[]arr){
// 1.找第一个元素上台。(假设第一个元素就是最大值)
int max=arr[0];
// 2.遍历数组,获取到每一个元素
for (int i = 1; i < arr.length; i++) {
if (arr[i]>max) {
// 4.记录更大的元素
max=arr[i];
}
}
// 在循环外面添加数据返回方便方法重复利用
return max;
}
}
下面是其他运算的
package Test;
public class ArrTest2 {
public static void main(String[] args) {
int[]arr={10,55,66,90,80};
int max=getMax(arr);
System.out.println("最大值为:"+max);
int min=getMin(arr);
System.out.println("最小值为:"+min);
int sum=getSun(arr);
System.out.println("总成绩为:"+sum);
double ave=getAve(arr);
System.out.println("平均分为:"+ave);
int count=getCount(arr);
System.out.println("低于平均分人数的个数为:"+count);
}
/*
需求:
已知班级学生成绩为
int[]arr={10,55,66,90,80}
1.找出数组最大值,并打印在控制台
2.找出最小值并打印控制台
3.求总成绩,并打印控制台
4.计算出平均值,并打印控制台
5.统计出低于平均值的个数
*/
// 最大值
public static int getMax( int[]arr){
int max=arr[0];
for (int i = 1; i < arr.length; i++) {
if (arr[i] >max) {
max=arr[i];
}
}
return max;
}
// 最小值
public static int getMin( int[]arr){
int min=arr[0];
for (int i = 1; i < arr.length; i++) {
if (arr[i] <min) {
min=arr[i];
}
}
return min;
}
// 求和
public static int getSun( int[]arr){
int sum=0;
for (int i = 0; i < arr.length; i++) {
sum+=arr[i];
}
return sum;
}
// 平均值
public static double getAve(int[]arr){
// 直接使用上面我们计算出来的总数
int sum=getSun(arr);
double ave= (sum *1.0)/ arr.length;
return ave;
}
//低于平均数的个数
public static int getCount(int[]arr){
// 定义一个计数器变量
int count=0;
// 2.计算平均分
double avg=getAve(arr);
for (int i = 0; i < arr.length; i++) {
if (arr[i] <avg) {
count++;
}
}
return count;
}
}