Java集合(例题及代码)
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
List<Student> list = new ArrayList<>();
list.add(new Student(1, "张三", 30));
list.add(new Student(1, "张4", 18));
list.add(new Student(1, "张5", 16));
list.add(new Student(1, "张6", 25));
list.add(new Student(1, "张7", 26));
list.add(new Student(1, "张8", 14));
list.add(new Student(1, "田七", 22));
// 遍历方式1
for (int i = 1; i < list.size(); i++) {
}
System.out.println(list);
System.out.println("-------------------------------------------");
// 遍历方式2
for (Student s2 : list) {
System.out.println(s2);
}
System.out.println("-------------------------------------------");
// 遍历方式3
Iterator<Student> it = list.iterator();
while (it.hasNext()) {
Student st = it.next();
System.out.println(st);
}
System.out.println("-------------------------------------------");
// 2.按姓名查找
Scanner sc = new Scanner(System.in);
System.out.println("请输入姓名");
String thename = sc.next();
Student s1 = Function.find(list, thename);
if (s1 != null) {
System.out.println(s1);
} else
System.out.println("没有这个学生");
// 3.计算平均年龄
double sum = 0;
int average = 0;
for (int i = 1; i < list.size(); i++) {
sum += (list.get(i).getAge());
average = (int) (sum / list.size());
}
System.out.println("平均年龄:" + average);
// 计算最大年龄
double max = 0;
for (int i = 0; i < list.size(); i++) {
if (list.get(i).getAge() > max) {
max = list.get(i).getAge();
}
}
System.out.println("最大值:" + max);
// 计算最小年龄
double min = list.get(0).getAge();
for (int i = 0; i < list.size(); i++) {
if (list.get(i).getAge() < min) {
min = list.get(i).getAge();
}
}
System.out.println("最小值:" + min);
// 4.如果存在名字叫张三的将名字改为张兵
for (int i = 0; i < list.size(); i++) {
if (list.get(i).getName().equals("张三")) {
list.get(i).setName("张兵");
}
}
// 5.删除年龄小于20岁 的学生从集合中
for (int i = 0; i < list.size(); i++) {
if (list.get(i).getAge() < 20) {
list.remove(i);
i--;
}
}
for (Student student : list) {
System.out.println(student);
}
}
}