Вывод верный
2
3
4
5
Иванов Иван м 28-Apr-2021
Петров Петр м 28-Apr-2021
Василий м 15-Apr-1990
Алена ж 15-Apr-1990
Василий м 15-Apr-1990
Алена ж 15-Apr-1990
- следовательно буква с - английская))
спасайте Товарищи))
package com.javarush.task.task17.task1711;
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) {
//start here - начни тут
try {
switch (args[0]) {
case "-c":
synchronized (allPeople) {
for (int i = 1; i < args.length; i += 3) {
createPerson(args[i], lookUnderTheTail(args[i + 1]), whatDaysItWas(args[1 + 2]));
}
}
break;
case "-u":
synchronized (allPeople) {
for (int i = 1; i < args.length; i += 4) {
updatePerson(Integer.parseInt(args[i]), args[i + 1], lookUnderTheTail(args[i + 2]), whatDaysItWas(args[i + 3]));
}
}
break;
case "-d":
synchronized (allPeople) {
for (int i = 1; i < args.length; i++) {
deletePerson(Integer.parseInt(args[i]));
}
}
break;
case "-i":
synchronized (allPeople) {
for (int i = 1; i < args.length; i++) {
viewInformation(Integer.parseInt(args[i]));
}
}
break;
}
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println("u-u-u-u-ups");
}
}
public static void viewInformation(int index) {
Person somePerson = allPeople.get(index);
System.out.println(somePerson.getName() + " "
+ lookUnderTheTail(somePerson.getSex()) + " "
+ new SimpleDateFormat("dd-MMM-yyyy", Locale.ENGLISH).format(somePerson.getBirthDate()));
}
public static void deletePerson(int index) {
Person somePerson = allPeople.get(index);
somePerson.setName(null);
somePerson.setSex(null);
somePerson.setBirthDate(null);
}
public static void updatePerson(int index, String name, Sex sex, Date dateB) {
Person somePerson = allPeople.get(index);
somePerson.setName(name);
somePerson.setSex(sex);
somePerson.setBirthDate(dateB);
}
public static void createPerson(String name, Sex sex, Date dateB) {
if (sex == Sex.MALE) {
Person man = Person.createMale(name, dateB);
allPeople.add(man);
System.out.println(allPeople.lastIndexOf(man));
}
if (sex == Sex.FEMALE) {
Person female = Person.createFemale(name, dateB);
allPeople.add(female);
System.out.println(allPeople.lastIndexOf(female));
}
}
public static Sex lookUnderTheTail(String sex) {
return sex.equalsIgnoreCase("м") ? Sex.MALE : Sex.FEMALE;
}
public static String lookUnderTheTail(Sex sex) {
return sex == Sex.MALE ? "м" : "ж";
}
public static Date whatDaysItWas(String d) {
String[] sd = d.split("/");
String year = sd[2].split("")[2].concat(sd[2].split("")[3]);
return new Date(Integer.parseInt(year), Integer.parseInt(sd[1]) - 1, Integer.parseInt(sd[0]));
}
}