Работает верно ,подскажите в чем может быть ошибка
package com.javarush.task.pro.task12.task1209;
import java.util.ArrayList;
/*
Бухгалтерия
*/
public class Solution {
public static ArrayList<String> waitingEmployees = new ArrayList<>();
public static ArrayList<String> alreadyGotSalaryEmployees = new ArrayList<>();
public static void initEmployees() {
waitingEmployees.add("Вася");
waitingEmployees.add("Гунигерд");
waitingEmployees.add("Боргелейф");
waitingEmployees.add("Нифрод");
waitingEmployees.add("Альбиуф");
waitingEmployees.add("Демид");
waitingEmployees.add("Фриле");
}
public static void main(String[] args) {
initEmployees();
paySalary(null);
}
public static void paySalary(String name) {
alreadyGotSalaryEmployees.add(name);
for (int i = 0; i < waitingEmployees.size(); i++) {
name = waitingEmployees.get(i);
if (!alreadyGotSalaryEmployees.contains(name))
alreadyGotSalaryEmployees.add(name);
else waitingEmployees.set(i,null);
}
if (alreadyGotSalaryEmployees.contains(null)){
alreadyGotSalaryEmployees.remove(null);
}
for (int i = 0; i < alreadyGotSalaryEmployees.size(); i++) {
name = alreadyGotSalaryEmployees.get(i);
if (!waitingEmployees.contains(name))
alreadyGotSalaryEmployees.remove(name);
}
for (int i = 0; i < alreadyGotSalaryEmployees.size(); i++) {
System.out.println(alreadyGotSalaryEmployees.get(i));
}
System.out.println("--------------");
for (int i = 0; i < waitingEmployees.size(); i++) {
System.out.println(waitingEmployees.get(i));
}
}
}