Думал вроде как понимаю, но оказалось - нет.
Помогите разобрать плиз, что правильно, а что нет
package com.javarush.task.pro.task14.task1401;
import java.util.Objects;
public class User {
private String name;
private int age;
public String getName() {
return name;
}
public int setName(String name) {
if (name == null) {
return -1;
} else if (name.isEmpty()) { //является ли строка пустой
return -2;
} else if (name.matches(".*\\d.*")) {
return -3;
} else {
this.name = name;
return 0;
}
}
public int getAge() {
return age;
}
public int setAge(int age) {
if (age < 0) {
return -1;
} else if (age > 150) {
return -2;
} else {
this.age = age;
return 0;
}
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (!(o instanceof User)) {
return false;
}
User user = (User) o;
return Objects.equals(getName(), user.getName());
}
@Override
public int hashCode() {
return Objects.hash(getName());
}
}