欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 培训 > java 给list对象根据给定条数进行分组工具类

java 给list对象根据给定条数进行分组工具类

2025/2/21 3:39:01 来源:https://blog.csdn.net/qq_38105536/article/details/141822354  浏览:    关键词:java 给list对象根据给定条数进行分组工具类

java 给list对象根据给定条数进行分组工具类

下面是一个示例的工具类,可以根据给定的条数对Student对象的List进行分组:

import java.util.ArrayList;
import java.util.List;public class StudentGroupUtil {public static List<List<Student>> groupStudents(List<Student> students, int groupSize) {List<List<Student>> result = new ArrayList<>();int size = students.size();int groupCount = (size + groupSize - 1) / groupSize; // 计算分组个数for (int i = 0; i < groupCount; i++) {int start = i * groupSize; // 计算起始索引int end = Math.min((i + 1) * groupSize, size); // 计算结束索引List<Student> group = students.subList(start, end); // 获取子列表作为分组result.add(group);}return result;}
}

使用示例:

import java.util.ArrayList;
import java.util.List;public class Main {public static void main(String[] args) {List<Student> students = new ArrayList<>();students.add(new Student("Alice", 18));students.add(new Student("Bob", 20));students.add(new Student("Charlie", 22));students.add(new Student("David", 24));students.add(new Student("Emma", 26));List<List<Student>> groups = StudentGroupUtil.groupStudents(students, 2);for (List<Student> group : groups) {System.out.println("Group:");for (Student student : group) {System.out.println("Name: " + student.getName() + ", Age: " + student.getAge());}System.out.println();}}
}class Student {private String name;private int age;public Student(String name, int age) {this.name = name;this.age = age;}public String getName() {return name;}public int getAge() {return age;}
}

输出结果:

Group:
Name: Alice, Age: 18
Name: Bob, Age: 20Group:
Name: Charlie, Age: 22
Name: David, Age: 24Group:
Name: Emma, Age: 26

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词