Более эффективно? Нет.
Более читабельно? Да - эффективность другого рода.
Создайте что-то вроде isValid()
метода для каждого поля или типа поля. Они будут содержать простые проверки, такие как пустые проверки, регулярные выражения и т. Д., А иногда и другую предметно-ориентированную логику.
Существует множество способов разбить и / или абстрагировать эту функциональность, наиболее приблизительно эквивалентную:
private void addPersonButtonActionPerformed(java.awt.event.ActionEvent evt) {
String firstName = firstNameTextField.getText();
String lastName = lastNameTextField.getText();
String emailAddress = emailTextField.getText();
if ( isNameValid(firstName, "First name")
&& isNameValid(lastName, "Last name")
&& isEmailValid(emailAddress, "Email address")) {
personArrayList.add(new Person(firstName, lastName, emailAddress));
System.out.println("Person added!");
}
}
Идея состоит в том, чтобы основной код был чистым и лаконичным, таким образом, чтобы он соответствовал вашему личному стилю, используемым вами библиотекам и т. Д. В дополнение к вашим собственным, существуют существующие библиотеки для этого.
Если у вас много подобных «форм», возможно, имеет смысл абстрагировать саму форму и ее валидацию; если это только один, не может быть веской причины, чтобы идти дальше, чем то, что напоминает выше.