Вроде решил правильно, а валидатор не пропускает
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 {
switch (args[0]) {
case "-c":
createPearson(args[1], args[2], args[3]);
break;
case "-u":
updatePearson(args[1], args[2], args[3], args[4]);
break;
case "-d":
deletetePearson(args[1]);
case "-i":
showPearson(args[1]);
}
//start here - начни тут
}
public static void createPearson(String name, String sex, String bd) throws ParseException {
Date newInDate = new SimpleDateFormat("dd/MM/yyyy", Locale.ENGLISH).parse(bd);
if (sex.equals("м")) { allPeople.add(Person.createMale(name, newInDate)); }
if (sex.equals("ж")) { allPeople.add(Person.createFemale(name, newInDate)); }
System.out.println(allPeople.size()-1);
}
public static void updatePearson(String id, String name, String sex, String bd) throws ParseException {
Date newInDate = new SimpleDateFormat("dd/MM/yyyy", Locale.ENGLISH).parse(bd);
if (sex.equals("м")) { allPeople.set(Integer.parseInt(id), Person.createMale(name, newInDate)); }
if (sex.equals("ж")) { allPeople.set(Integer.parseInt(id), Person.createFemale(name, newInDate)); }
}
public static void deletetePearson(String id) throws ParseException {
Person deletedPerson = allPeople.get(Integer.parseInt(id));
deletedPerson.setName(null);
deletedPerson.setSex(null);
deletedPerson.setBirthDate(null);
allPeople.set(Integer.parseInt(id), deletedPerson);
}
public static void showPearson(String id) throws ParseException {
SimpleDateFormat newDate = new SimpleDateFormat("dd-MMM-yyyy", Locale.ENGLISH);
String sexData = "";
if(allPeople.get(Integer.parseInt(id)).getSex()==Sex.MALE){ sexData = "м"; }
if(allPeople.get(Integer.parseInt(id)).getSex()==Sex.FEMALE){ sexData = "ж"; }
System.out.println(allPeople.get(Integer.parseInt(id)).getName() + " " + sexData + " " + newDate.format(allPeople.get(Integer.parseInt(id)).getBirthDate()));
}
}