Merge pull request #2 from erius0/dev

Dev
This commit is contained in:
Egor 2022-02-21 19:53:27 +03:00 committed by GitHub
commit f6f8121178
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 13 additions and 13 deletions

View file

@ -190,13 +190,13 @@ public final class PeopleDatabaseCommands {
System.out.println("Создание нового объекта класса Person"); System.out.println("Создание нового объекта класса Person");
String name = CMD.awaitInput("Введите имя:", "Введите непустую строку", String name = CMD.awaitInput("Введите имя:", "Введите непустую строку",
input -> !input.isEmpty()); input -> !input.isEmpty());
int height = CMD.awaitInput("Введите рост:", "Введите целое число, большее нуля", Integer height = CMD.awaitInput("Введите рост:", "Введите целое число, большее нуля",
input -> { input -> {
Integer result = UtilFunctions.intOrNull(input); Integer result = UtilFunctions.intOrNull(input);
return result != null && result > 0; return result != null && result > 0 || input.isEmpty();
}, Integer::parseInt); }, input -> input.isEmpty() ? null : Integer.parseInt(input));
String passportID = CMD.awaitInput("Введите номер паспорта:", "Введите минимум 8 символов", String passportID = CMD.awaitInput("Введите номер паспорта:", "Введите минимум 8 символов",
input -> input.length() >= 8); input -> input.length() >= 8 || input.isEmpty(), input -> input.isEmpty() ? null : input);
Color eyeColor = CMD.awaitInput("Введите цвет глаз " + COLORS + ":", "Введите один из предложенных цветов", Color eyeColor = CMD.awaitInput("Введите цвет глаз " + COLORS + ":", "Введите один из предложенных цветов",
input -> UtilFunctions.enumOrNull(input.toUpperCase(Locale.ROOT), Color.class) != null, input -> UtilFunctions.enumOrNull(input.toUpperCase(Locale.ROOT), Color.class) != null,
input -> Color.valueOf(input.toUpperCase(Locale.ROOT))); input -> Color.valueOf(input.toUpperCase(Locale.ROOT)));
@ -217,7 +217,7 @@ public final class PeopleDatabaseCommands {
long z = CMD.awaitInput("Введите z:", "Введите целое число", long z = CMD.awaitInput("Введите z:", "Введите целое число",
input -> UtilFunctions.longOrNull(input) != null, Long::parseLong); input -> UtilFunctions.longOrNull(input) != null, Long::parseLong);
String name = CMD.awaitInput("Введите название:", "Строка не может быть пустой", String name = CMD.awaitInput("Введите название:", "Строка не может быть пустой",
input -> !input.isEmpty()); input -> true, input -> input.isEmpty() ? null : input);
return new Location(x, y, z, name); return new Location(x, y, z, name);
} }

View file

@ -41,8 +41,8 @@ public class Coordinates {
* @throws IllegalArgumentException Если Y меньше или равен -816 * @throws IllegalArgumentException Если Y меньше или равен -816
*/ */
public void setY(float y) { public void setY(float y) {
this.y = y;
if (y <= -816) if (y <= -816)
throw new IllegalArgumentException("Поле y класса Coordinates должно быть больше -816"); throw new IllegalArgumentException("Поле y класса Coordinates должно быть больше -816");
this.y = y;
} }
} }

View file

@ -54,9 +54,9 @@ public class Location implements Comparable<Location> {
* @throws IllegalArgumentException Если name является пустой строкой * @throws IllegalArgumentException Если name является пустой строкой
*/ */
public void setName(String name) { public void setName(String name) {
this.name = name; if (name != null && name.isEmpty())
if (name.isEmpty())
throw new IllegalArgumentException("Поле name класса Location не может быть пустым"); throw new IllegalArgumentException("Поле name класса Location не может быть пустым");
this.name = name;
} }
/** /**

View file

@ -130,9 +130,9 @@ public class Person implements Comparable<Person> {
* Если имя является пустой строкой * Если имя является пустой строкой
*/ */
public void setName(String name) { public void setName(String name) {
this.name = name;
if (name.isEmpty()) if (name.isEmpty())
throw new IllegalArgumentException("Поле name класса Person не может быть null или пустым"); throw new IllegalArgumentException("Поле name класса Person не может быть null или пустым");
this.name = name;
} }
/** /**
@ -143,9 +143,9 @@ public class Person implements Comparable<Person> {
* @throws IllegalArgumentException Если рост меньше 0 * @throws IllegalArgumentException Если рост меньше 0
*/ */
public void setHeight(Integer height) { public void setHeight(Integer height) {
this.height = height; if (height != null && height <= 0)
if (height <= 0)
throw new IllegalArgumentException("Поле height класса Person должно быть больше 0"); throw new IllegalArgumentException("Поле height класса Person должно быть больше 0");
this.height = height;
} }
/** /**
@ -156,9 +156,9 @@ public class Person implements Comparable<Person> {
* @throws IllegalArgumentException Если номер паспорта меньше 8 символов в длину * @throws IllegalArgumentException Если номер паспорта меньше 8 символов в длину
*/ */
public void setPassportID(String passportID) { public void setPassportID(String passportID) {
this.passportID = passportID; if (passportID != null && passportID.length() < 8)
if (passportID.length() < 8)
throw new IllegalArgumentException("Поле passportID класса Person не может быть меньше 8 символов в длину"); throw new IllegalArgumentException("Поле passportID класса Person не может быть меньше 8 символов в длину");
this.passportID = passportID;
} }
/** /**