嗨我正在創建一個sortOf使用javafx8的銀行應用程序。我似乎在添加新帳戶方面遇到了麻煩。我想要做的是創建一個循環來讀取列表,如果存在相同的帳號並提示用戶它已經存在。你能檢查我做錯了嗎?通過Arrayyl循環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?我們可能還需要了解更多關於Person的信息... – DreadHeadedDeveloper 2014-10-05 02:55:53
accountNumField是一個文本框的分配,用戶可以在其中輸入想要的帳號 – Onedaynerd 2014-10-05 02:59:32
ok,那麼Person呢?我問,因爲你有行accountNumField.getText()。等於(人),這是否意味着人員擴展字符串或東西? equals()方法在這種情況下甚至可以使用嗎? – DreadHeadedDeveloper 2014-10-05 03:04:05