问题案例
一个班级有3个教师,20名同学。按照以下方式编写
1、20名同学分分成4组,每组5人为一个list。然后每2组成为一个队。2个队成为一个班级。
2、教师每人一个键值对,然后放入map,最后,用循环打印出所有学生和教师的信息
案例代码
下面是 Java 的案例代码,实现了你描述的需求:
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Main {
public static void main(String[] args) {
// 创建学生列表
List<String> students = new ArrayList<>();
for (int i = 1; i <= 20; i++) {
students.add("学生" + i);
}
// 将学生分成四组,每组五人
List<List<String>> studentGroups = new ArrayList<>();
for (int i = 0; i < 4; i++) {
List<String> group = students.subList(i * 5, (i + 1) * 5);
studentGroups.add(group);
}
// 将两个组合成一个队
List<List<String>> teams = new ArrayList<>();
for (int i = 0; i < 4; i += 2) {
List<String> team = new ArrayList<>();
team.addAll(studentGroups.get(i));
team.addAll(studentGroups.get(i + 1));
teams.add(team);
}
// 创建教师列表
List<String> teachers = new ArrayList<>();
for (int i = 1; i <= 3; i++) {
teachers.add("教师" + i);
}
// 创建教师与班级的映射关系
Map<String, List<List<String>>> teacherClassMap = new HashMap<>();
for (String teacher : teachers) {
teacherClassMap.put(teacher, teams);
}
// 打印学生和教师信息
for (Map.Entry<String, List<List<String>>> entry : teacherClassMap.entrySet()) {
System.out.println("教师:" + entry.getKey());
List<List<String>> classes = entry.getValue();
for (int i = 0; i < classes.size(); i++) {
System.out.println("班级" + (i + 1) + ": " + classes.get(i));
}
System.out.println();
}
}
}
这段代码首先创建了一个包含 20 名学生的列表,并将其分成四组,每组五人。然后将两个相邻组合成一个队,总共形成了两个队。接着创建了包含三个教师名称的列表,并将每个教师与两个队形成的班级建立映射关系。最后,通过循环打印出了每个教师负责的班级和班级中的学生信息。
© 版权声明
本站提供的资源,都来自网络,版权争议与本站无关,所有内容及软件的文章仅限用于学习和研究目的。不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负,我们不保证内容的长久可用性,通过使用本站内容随之而来的风险与本站无关,您必须在下载后的24个小时之内,从您的电脑/手机中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。侵删请致信E-mail:317608094@qq.com
THE END
暂无评论内容