Не прохожу последний блок, в чем может быть ошика? 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 } static SimpleDateFormat date = new SimpleDateFormat("dd/MM/yyyy", Locale.ENGLISH); static SimpleDateFormat date2 = new SimpleDateFormat("dd-MMM-yyyy", Locale.ENGLISH); public static void main(String[] args) { if (args == null || args.length < 1) throw new RuntimeException(); Person person; switch (args[0]) { case "-c": synchronized (allPeople){ for (int i = 0; i < args.length; i = i+3) { try { Date dat = date.parse(args[i + 3]); if (args[i + 2].equals("м")) { allPeople.add(Person.createMale((args[i + 1]), dat)); System.out.println(allPeople.size() - 1); } else { allPeople.add(Person.createFemale((args[i + 1]), dat)); System.out.println(allPeople.size() - 1); } } catch (Exception e) { } } } break; case "-u": synchronized (allPeople){ for (int i = 0; i < args.length; i = i+4) { try { Date dat = date.parse(args[i+4]); if (args[i+3].equals("м")) { allPeople.set(Integer.parseInt(args[i+1]),Person.createMale((args[i+2]), dat)); } else { allPeople.set(Integer.parseInt(args[i+1]),Person.createFemale((args[i+2]), dat)); } } catch (Exception e) { } } } break; case "-d": synchronized (allPeople){ for (int i = 0; i < args.length-1; i++) { allPeople.get(Integer.parseInt(args[i+1])).setBirthDate(null); allPeople.get(Integer.parseInt(args[i+1])).setName(null); allPeople.get(Integer.parseInt(args[i+1])).setSex(null); } } break; case "-i": synchronized (allPeople){ for (int i = 1; i < args.length; i++) { int id = Integer.parseInt(args[i]); System.out.print(allPeople.get(id).getName() + " "); System.out.print(allPeople.get(id).getSex().equals(Sex.MALE) ? "м " : "ж "); System.out.print(date2.format(allPeople.get(id).getBirthDate())); } } break; } } }