gpt4 book ai didi

java - java中基于字段值的List列表

转载 作者:行者123 更新时间:2023-11-29 05:18:02 24 4
gpt4 key购买 nike

我最近参加了法国巴黎银行的面试我被问到以下基于集合的问题。

有一个包含对 Designation 类的引用的 Employee 类

我被要求编写一个辅助类,它接受员工列表并返回根据指定分组的员工列表。

class Employee
{
Designation designation;
public Employee(Designation designation) {
this.designation=designation;
}
}

class Designation
{
String des;
public Designation(String des) {
this.des=des;
}

}

class Helper
{
public static List<List<Employee>> groupList(List<Employee> empList)
{
List<List<Employee>> empGroupList=new ArrayList<List<Employee>>();

for(Employee e:empList)
{
// more code goes here
}

return empGroupList;
}

}

我假设 Helper 类有指定列表来回答这个问题,但面试官说 Helper 类是通用的,不了解指定。

最佳答案

最简单的方法是在内部使用 Map,然后将其 values() 转换为 List:

public static List<List<Employee>> groupList(List<Employee> empList) {
Map<String, List<Employee>> map = new HashMap<>();

for(Employee e : empList) {
String designation = e.getDesignation();
List<Employee> list = map.get(designation);
if (list == null) {
list = new ArrayList<>();
map.put(designation, list);
}
list.add(e);
}

return new ArrayList<>(map.values());
}

关于java - java中基于字段值的List列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25835987/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com