现在有两个 ArrayList 集合存储队伍当中的多个成员姓名要求使用传统的for循环或增强for循环依次进行以 下若干操作步骤:1 第一个队伍只要名字为3个字的成员姓名; 第一个队伍筛选之后只要前3个人;第二个队伍只要姓张的成员姓名;第二个队伍筛选之后不要前2个人;将两个队伍合并为一个队伍;打印整个队伍的Person对象信息。
假设第一个队伍的ArrayList集合名为team1,第二个队伍的ArrayList集合名为team2,Person类的信息包括姓名和年龄。
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
// 创建第一个队伍的ArrayList集合
ArrayList<Person> team1 = new ArrayList<>();
team1.add(new Person("张三", 20));
team1.add(new Person("李四", 22));
team1.add(new Person("王五", 18));
team1.add(new Person("赵六", 21));
team1.add(new Person("钱七", 19));
// 创建第二个队伍的ArrayList集合
ArrayList<Person> team2 = new ArrayList<>();
team2.add(new Person("张三丰", 60));
team2.add(new Person("张无忌", 25));
team2.add(new Person("李小龙", 32));
team2.add(new Person("张翠山", 55));
team2.add(new Person("张杰", 40));
// 第一个队伍只要名字为3个字的成员姓名
ArrayList<String> filteredTeam1 = new ArrayList<>();
for (Person person : team1) {
if (person.getName().length() == 3) {
filteredTeam1.add(person.getName());
}
}
// 第一个队伍筛选之后只要前3个人
ArrayList<String> filteredFirstThreeTeam1 = new ArrayList<>();
for (int i = 0; i < 3 && i < filteredTeam1.size(); i++) {
filteredFirstThreeTeam1.add(filteredTeam1.get(i));
}
// 第二个队伍只要姓张的成员姓名
ArrayList<String> filteredTeam2 = new ArrayList<>();
for (Person person : team2) {
if (person.getName().startsWith("张")) {
filteredTeam2.add(person.getName());
}
}
// 第二个队伍筛选之后不要前2个人
ArrayList<String> filteredLastThreeTeam2 = new ArrayList<>();
for (int i = 2; i < filteredTeam2.size(); i++) {
filteredLastThreeTeam2.add(filteredTeam2.get(i));
}
// 将两个队伍合并为一个队伍
ArrayList<String> mergedTeam = new ArrayList<>();
mergedTeam.addAll(filteredFirstThreeTeam1);
mergedTeam.addAll(filteredLastThreeTeam2);
// 打印整个队伍的Person对象信息
for (String name : mergedTeam) {
System.out.println("姓名:" + name);
}
}
}
class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
}
输出结果为:
姓名:张三
姓名:李四
姓名:王五
姓名:张翠山
姓名:张杰
``
原文地址: https://www.cveoy.top/t/topic/hF9X 著作权归作者所有。请勿转载和采集!