У меня есть объект, который содержит список сотрудников, и у каждого сотрудника есть groupNumber (1-4);и я хочу, чтобы сотрудники приобрели опыт во всех других группах, включая их собственные. В каждой группе я хочу видеть как минимум 1 сотрудника из разных групп (в идеале будет 4 сотрудника в новых сгенерированных группах из разных групп). Код ниже выполняет случайные заказы, что я должен использовать, чтобы применить условия выше. Спасибо за любые предложения.
public static void main(String[] args) {
ArrayList<Employee> emp = new ArrayList<Employee>();
emp.add(new Employee("Tom", "Technology", 56, 34, 46, 23, 1));
emp.add(new Employee("Katty", "Operations", 56, 34, 76, 23, 3));
emp.add(new Employee("Janet", "Technology", 56, 34, 46, 23, 1));
emp.add(new Employee("Sally", "Shared Services", 16, 24, 46, 93, 4));
emp.add(new Employee("Chitra", "Technology", 12, 54, 46, 23, 1));
emp.add(new Employee("Sally", "Trading", 16, 64, 46, 23, 2));
emp.add(new Employee("Nick", "Technology", 65, 33, 21, 23, 1));;
emp.add(new Employee("Todd", "Trading", 56, 74, 46, 23, 2));
emp.add(new Employee("Nick", "Trading", 65, 93, 21, 23, 2));
emp.add(new Employee("Jerry", "Operations", 56, 34, 66, 23, 3));
emp.add(new Employee("Jerry", "Technology", 67, 34, 46, 23, 1));
emp.add(new Employee("Chitra", "Operations", 12, 54, 86, 23, 3));
emp.add(new Employee("Ashley", "Shared Services", 12, 84, 26, 63, 4));
emp.add(new Employee("Mohammed", "Shared Services", 8, 54, 36, 83, 4));
emp.add(new Employee("John", "Technology", 56, 34, 46, 23, 1));
emp.add(new Employee("Kelly", "Trading", 56, 64, 46, 23, 2));
emp.add(new Employee("Nancy", "Operations", 15, 34, 56, 23, 3));
emp.add(new Employee("Gaby", "Shared Services", 56, 34, 46, 83, 4));
emp.add(new Employee("Sharon", "Trading", 56, 64, 46, 23, 2));
emp.add(new Employee("Pankaj", "Technology", 56, 34, 46, 23, 1));
emp.add(new Employee("Vignesh", "Operations", 56, 34, 96, 23, 3));
emp.add(new Employee("Jill", "Shared Services", 56, 34, 46, 53, 4));
List<Employee> empTechnologyGroup = new ArrayList<Employee>();
List<Employee> empTradingGroup = new ArrayList<Employee>();
List<Employee> empOperationGroup = new ArrayList<Employee>();
List<Employee> empSharedServicesGroup = new ArrayList<Employee>();
emp.forEach(employee -> {
int groupNo = ThreadLocalRandom.current().nextInt(1, 5);
switch (groupNo) {
case 1:
empTechnologyGroup.add(employee);
break;
case 2:
empTradingGroup.add(employee);
break;
case 3:
empOperationGroup.add(employee);
break;
case 4:
empSharedServicesGroup.add(employee);
break;
default:
System.out.println("Hmmm... What happened?");
break;
}
});
System.out.println("Technology Group:");
empTechnologyGroup.forEach(System.out::println);
System.out.println();
System.out.println("Trading Group:");
empTradingGroup.forEach(System.out::println);
System.out.println();
System.out.println("Operations Group:");
empOperationGroup.forEach(System.out::println);
System.out.println();
System.out.println("Shared Services Group:");
empSharedServicesGroup.forEach(System.out::println);
System.out.println();
}
}