Убедись, что правильно обновляется дата рождения человека.
Не понимаю, что ему не нравится. Объясните пж
package com.javarush.task.task17.task1710;
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
*/
public class Solution {
public static 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) throws ParseException {
// -c - добавляет человека с заданными параметрами в конец allPeople, выводит id (index) на экран
// -r - выводит на экран информацию о человеке с id: name sex (м/ж) bd (формат 15-Apr-1990)
// -u - обновляет данные человека с данным id
// -d - производит логическое удаление человека с id, заменяет все его данные на null
if (args[0].equals("-c")) {
if (args[2].equals("м")) allPeople.add(Person.createMale(args[1], new SimpleDateFormat("dd/MM/yyyy", Locale.ENGLISH).parse(args[3])));
if (args[2].equals("ж")) allPeople.add(Person.createFemale(args[1], new SimpleDateFormat("dd/MM/yyyy", Locale.ENGLISH).parse(args[3])));
System.out.println(allPeople.size() - 1);
}
if (args[0].equals("-r")) {
SimpleDateFormat date = new SimpleDateFormat("dd/MM/yyyy", Locale.ENGLISH);
Person person = allPeople.get(Integer.parseInt(args[1]));
System.out.println(person.getName() + " " + (person.getSex() == Sex.MALE ? "м" : "ж") + " " + (new SimpleDateFormat("dd-MMM-yyyy", Locale.ENGLISH)).format(person.getBirthDate()));
}
if (args[0].equals("-u")) {
if (args[2].equals("м")) {
allPeople.get(Integer.parseInt(args[1])).setName(args[1]);
allPeople.get(Integer.parseInt(args[1])).setSex(Sex.MALE);
allPeople.get(Integer.parseInt(args[1])).setBirthDate(new SimpleDateFormat("dd/MM/yyyy", Locale.ENGLISH).parse(args[3]));
} else if (args[2].equals("ж")) {
allPeople.get(Integer.parseInt(args[1])).setName(args[1]);
allPeople.get(Integer.parseInt(args[1])).setSex(Sex.FEMALE);
allPeople.get(Integer.parseInt(args[1])).setBirthDate(new SimpleDateFormat("dd/MM/yyyy", Locale.ENGLISH).parse(args[3]));
}
}
if (args[0].equals("-d")) {
allPeople.get(Integer.parseInt(args[1])).setName(null);
allPeople.get(Integer.parseInt(args[1])).setSex(null);
allPeople.get(Integer.parseInt(args[1])).setBirthDate(null);
}
}
}