集合元素处理(传统方式)
作者:互联网
题目
现在有两个ArrayList集合存储队伍当中的多个成员姓名,要求使用传统的for循环(或增强for循环)依次进行一下若干操作步骤:
1.第一个队伍只要名字为3个字的成员姓名;存储到一个新的集合中。
2.第一个队伍筛选之后只要前三个人;存储到一个新的集合中。
3.第二个队伍只要姓张的成员姓名;存储到一个新的集合中。
4.第二个队伍筛选之后不要前两个人;存储到一个新的集合中。
5.将两个队伍合并为一个队伍;存储到一个新的集合中。
6.根据姓名创建Person对象;存储到一个新的集合中。
7.打印整个队伍的Person对象信息。
第一支队伍:
ArrayList
Collections.addAll(one,"迪丽热巴","宋远桥","苏星河","石中玉","老子","孔子","洪七公");
第二支队伍:
ArrayList
Collections.addAll(two,"古力娜扎","张无忌","赵丽颖","张三丰","尼古拉斯赵四","张天爱","张二狗");
package com.yang.Test.StreamStudy.Test;
import java.util.ArrayList;
import java.util.Collections;
public class Test02 {
public static void main(String[] args) {
ArrayList<String> one = new ArrayList<>();
Collections.addAll(one,"迪丽热巴","宋远桥","苏星河","石中玉","老子","孔子","洪七公");
ArrayList<String> two = new ArrayList<>();
Collections.addAll(two,"古力娜扎","张无忌","赵丽颖","张三丰","尼古拉斯赵四","张天爱","张二狗");
// 1.第一个队伍只要名字为3个字的成员姓名;存储到一个新的集合中。
ArrayList<String> one1 = new ArrayList<>();
for (String name : one) {
if (name.length() == 3){
one1.add(name);
}
}
// 2.第一个队伍筛选之后只要前三个人;存储到一个新的集合中。
ArrayList<String> one2 = new ArrayList<>();
for (int i = 0; i < 3; i++) {
one2.add(one1.get(i));
}
// 3.第二个队伍只要姓张的成员姓名;存储到一个新的集合中。
ArrayList<String> two1 = new ArrayList<>();
for (String name : two) {
if (name.startsWith("张")){
two1.add(name);
}
}
// 4.第二个队伍筛选之后不要前两个人;存储到一个新的集合中。
ArrayList<String> two2 = new ArrayList<>();
for (int i = 2; i < two1.size(); i++) {
two2.add(two1.get(i));
}
// 5.将两个队伍合并为一个队伍;存储到一个新的集合中。
ArrayList<String> all = new ArrayList<>();
all.addAll(two2);
all.addAll(one2);
// 6.根据姓名创建Person对象;存储到一个新的集合中。
ArrayList<Person> people = new ArrayList<>();
for (String name : all) {
people.add(new Person(name));
}
// 7.打印整个队伍的Person对象信息。
for (Person person : people) {
System.out.println(person);
}
}
}
标签:存储,name,处理,ArrayList,元素,队伍,集合,new 来源: https://www.cnblogs.com/ailhy/p/16502096.html