1 回答

TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超4個(gè)贊
問題是您正在循環(huán)中設(shè)置操作。也就是說,為每對(duì)創(chuàng)建一個(gè)操作對(duì)象,然后進(jìn)行分配。因此,在上次迭代之后,操作將設(shè)置為最新的對(duì)象,這顯然是檢查最后一對(duì)用戶名 - 密碼。
循環(huán)翻譯為類似的東西,
setOnAction(檢查管理員 1、apple、admin 的操作對(duì)象 1)
設(shè)置操作(檢查員工1、橙色、員工的操作對(duì)象2)
這有效地保留了上次創(chuàng)建的對(duì)象,并僅檢查最后一對(duì)
您可能希望修改邏輯,以便只有一個(gè)操作對(duì)象。然后檢查有效的用戶名-密碼對(duì)。
像這樣:
btnLogin.setOnAction(e -> {
while (in.hasNextLine() ) {
// check condition here
// don't forget to break when successful
}
in.close();
});
另外,請(qǐng)確保在找到成功對(duì)后斷開循環(huán)。否則同樣的事情也會(huì)發(fā)生。
添加回答
舉報(bào)