需求描述
编写一个工具类,对ArrayList实现以下功能:
① 排序
② 求最大值
③ 求最小值
④ 求平均值
需求实现
实现代码
package cn.test.logan.day04; import java.util.ArrayList; /**
* 编写一个工具类:对整型的Arraylist实现排序、求最大值、最小值、平均值等
* @author QIN
*
*/
public class ListUtils {
// 排序
public static void sort(ArrayList<Integer> list) {
for(int i=0;i<list.size()-1;i++) {
for(int j=0;j<list.size()-1-i;j++) {
if(list.get(j)>list.get(j+1)) {
int tmp = list.get(j);
list.set(j, list.get(j+1));
list.set(j+1, tmp);
}
}
}
} // 求最大值
public static int getMax(ArrayList<Integer> list) {
int tmp = list.get(0);
for(int i=0;i<list.size();i++) {
if(list.get(i) > tmp) {
tmp = list.get(i);
}
}
return tmp;
}
public static int getMin(ArrayList<Integer> list) {
int tmp = list.get(0);
for(int i=0;i<list.size();i++) {
if(list.get(i) < tmp) {
tmp = list.get(i);
}
}
return tmp;
}
public static float getAvg(ArrayList<Integer> list) {
int sum=0;
for(int i=0;i<list.size();i++) {
sum+=list.get(i);
}
float avg = (float)sum/list.size();
return avg;
} }
ListUtils.java
package cn.test.logan.day04; import java.util.ArrayList; public class ListUtilsTest {
public static void main(String[] args) {
// 定义ArrayList
ArrayList<Integer> aylist = new ArrayList<Integer>();
aylist.add(30);
aylist.add(10);
aylist.add(20);
aylist.add(50);
aylist.add(40); // 排序
ListUtils.sort(aylist);
System.out.println(aylist.toString());
System.out.println("------------------------------"); // 求最大值
int max = ListUtils.getMax(aylist);
System.out.println(max);
System.out.println("------------------------------"); // 求最小值
int min = ListUtils.getMin(aylist);
System.out.println(min);
System.out.println("------------------------------"); // 求平均值
float avg = ListUtils.getAvg(aylist);
System.out.println(avg);
System.out.println("------------------------------");
}
}
ListUtilsTest.java