Привет, Я работаю над созданием sortOf для банковского приложения с использованием javafx8. Кажется, у меня проблемы с добавлением новой учетной записи. То, что я пытаюсь сделать, - создать цикл для чтения списка, если существует тот же номер учетной записи и предложить пользователю, чтобы он уже существовал. Не могли бы вы проверить, что я делаю неправильно.Looping через arraylist java
BTW I have corrected out all the typo's Eclipse always asks me to correct those before compiling
Это список в моем главном приложении private ObservableList<Person> personData = FXCollections.observableArrayList();
Вот что я сделал, чтобы получить доступ к списку на другой класс
public ObservableList<Person> getPersonData() {
return personData;
}
А вот в моем классе PersonEditDialogController, чтобы получить доступ к списку он сделал это
MainApp mainapp = new MainApp();
ObservableList<Person> personData = mainapp.getPersonData();
и вот мой код для проверки пользовательского ввода
private boolean isInputValid() {
String errorMessage = "";
if (accountNumField.getText() == null || accountNumField.getText().length() == 0) {
errorMessage += "Not a valid account number!\n";
}
//TO LOOP THROUGH THE LIST
Person person = null;
for (Person a : personData) {
if ((accountNumField.getText().equalsIgnoreCase(a.getaccountNum()))){
person = a;
break;
}
}
// CODE THAT DOES NOT WORK
if (accountNumField.getText().equals(person)){
errorMessage += "Account number already exist\n";
}
if (errorMessage.length() == 0) {
return true;
} else {
// Show the error message.
Dialogs.create()
.title("Invalid Fields")
.masthead("Please correct invalid fields")
.message(errorMessage)
.showError();
return false;
}
}
Нам потребуется дополнительная информация, например, что такое accountNumField? И нам может понадобиться узнать немного больше о Человеке, пока вы на нем ... – DreadHeadedDeveloper
accountNumField - это присвоение текстовому полю, в котором пользователь может ввести нужный номер учетной записи – Onedaynerd
ok, а как насчет Person? Я спрашиваю, потому что у вас есть строка accountNumField.getText(). Equals (person), означает ли это, что Person extends String или что-то? Как метод equals() может быть использован в этой ситуации? – DreadHeadedDeveloper