Ни как не могу понять какие аргументы в правильном ответе. То используется args[1], чтобы вернуть имя то, чтобы получить число
//имя
if (args[2].equals("м")) {
person = Person.createMale(args[1], birthdayDate);
} else {
person = Person.createFemale(args[1], birthdayDate);
}
//число
int id = Integer.parseInt(args[1]);
person = allPeople.get(id);
if (person == null) {
throw new IllegalArgumentException();
}
используется args[3] чтобы указать дату, так же используется args[4], чтобы указать дату
//args[3]
birthdayDate = simpleDateFormat.parse(args[3]);
//args[4]
birthdayDate = simpleDateFormat.parse(args[4]);
и вот еще условия к задачке
CRUD - Create, Read, Update, Delete.
Программа запускается с одним из следующих наборов параметров:
-c name sex bd
-r id
-u id name sex bd
-d id
Значения параметров:
name - имя, String
sex - пол, "м" или "ж", одна буква
bd - дата рождения в следующем формате 15/04/1990
-c - добавляет человека с заданными параметрами в конец allPeople, выводит id (index) на экран
-r - выводит на экран информацию о человеке с id: name sex (м/ж) bd (формат 15-Apr-1990)
-u - обновляет данные человека с данным id
-d - производит логическое удаление человека с id, заменяет все его данные на null
id соответствует индексу в списке.
Все люди должны храниться в allPeople.
Используй Locale.ENGLISH в качестве второго параметра для SimpleDateFormat.
Пример параметров:
-c Миронов м 15/04/1990
Пример вывода для параметра -r:
Миронов м 15-Apr-1990
Если программа запущена с параметрами, то они попадают в массив args (аргумент метода main - String[] args).
Например, при запуске программы c параметрами:
-c name sex bd
получим в методе main
args[0] = "-c"
args[1] = "name"
args[2] = "sex"
args[3] = "bd"
Для запуска кода с параметрами в IDE IntellijIDEA нужно их прописать в поле Program arguments в меню Run -> Edit Configurations.