Пропускал через отладчик, всё корректно
package com.javarush.task.task17.task1711;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/*
CRUD 2
*/
public class Solution {
public static volatile List<Person> allPeople = new ArrayList<Person>();
static {
allPeople.add(Person.createMale("Иванов Иван", new Date())); //сегодня родился id=0
allPeople.add(Person.createMale("Петров Петр", new Date())); //сегодня родился id=1
}
public static void main(String[] args) {
int size = args.length - 1;
int countParametrsForMod, parametrInd;
switch (args[0]) {
case "-c":
synchronized (allPeople) {
countParametrsForMod = 3;
for (int i = 0; i < size / countParametrsForMod; i++) {
parametrInd = countParametrsForMod * i;
new CreatePersonThread(args[parametrInd + 1], args[parametrInd + 2], args[parametrInd + 3]);
}
}
break;
case "-u":
synchronized (allPeople) {
countParametrsForMod = 4;
for (int i = 0; i < size / countParametrsForMod; i++) {
parametrInd = countParametrsForMod * i;
new SetPersonThread(args[parametrInd + 1], args[parametrInd + 2], args[parametrInd + 3], args[parametrInd + 4]);
}
}
break;
case "-d":
synchronized (allPeople) {
countParametrsForMod = 1;
for (int i = 0; i < size / countParametrsForMod; i++) {
parametrInd = countParametrsForMod * i;
new RemovePersonThread(args[parametrInd + 1]);
}
}
break;
case "-i":
synchronized (allPeople) {
countParametrsForMod = 1;
for (int i = 0; i < size / countParametrsForMod; i++) {
parametrInd = countParametrsForMod * i;
new PrintPersonThread(args[parametrInd + 1]);
}
}
break;
}
//start here - начни тут
}
}