Убедись, что действительно все люди добавляются в список allPeople
package com.javarush.task.task17.task1711;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Locale;
/*
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 id;
//используемые форматы времени
SimpleDateFormat si = new SimpleDateFormat("dd//MM/yyyy");
SimpleDateFormat so = new SimpleDateFormat("dd-MMM-yyyy", Locale.ENGLISH);
//- добавляет всех людей с заданными параметрами в конец allPeople, выводит id (index) на экран в соответствующем порядке
//-c name1 sex1 bd1 name2 sex2 bd2 ...
switch (args[0]) {
case "-с" :
synchronized (allPeople) {
for (int i = 1; i < args.length; i = i + 3) {
if (args[i + 1].equals("м")) {
try {
allPeople.add(Person.createMale(args[i], si.parse(args[i + 2])));
System.out.println(allPeople.size() - 1);
} catch (ParseException e) {
e.printStackTrace();
}
} else {
try {
allPeople.add(Person.createFemale(args[i], si.parse(args[i + 2])));
System.out.println(allPeople.size() - 1);
} catch (ParseException e) {
e.printStackTrace();
}
}
}
}
break;
case "-u" :
synchronized (allPeople) {
for (int i = 1; i<args.length; i = i + 4) {
id = Integer.parseInt(args[i]);
if (args[i + 2].equals("м")) {
try {
allPeople.set(id, Person.createMale(args[i + 1], si.parse(args[i + 3])));
} catch (ParseException e) {
e.printStackTrace();
}
} else {
try {
allPeople.set(id, Person.createFemale(args[i + 1], si.parse(args[i + 3])));
} catch (ParseException e) {
e.printStackTrace();
}
}
}
}
break;
case "-d":
synchronized (allPeople) {
for (int i = 1; i<args.length; i++) {
id = Integer.parseInt(args[i]);
allPeople.get(id).setName(null);
allPeople.get(id).setSex(null);
allPeople.get(id).setBirthDay(null);
}
}
break;
case "-i":
synchronized (allPeople) {
for (int i = 1; i<args.length; i++) {
id = Integer.parseInt(args[i]);
String name = allPeople.get(id).getName();
String pol = allPeople.get(id).equals(Sex.MALE) ? "м" : "ж";
System.out.printf("%s %s %s", name, pol, so.format(allPeople.get(id).getBirthDay()));
}
}
break;
}
//start here - начни тут
}
}