0
目前我已經有一個文本文件,其中包含用戶名和密碼,並把它放在一個對象。然而,當試圖登錄時,它說數組索引超出界限。看不到錯誤是什麼。如何搜索對象以查看它是否包含用戶名和密碼?
Object[][] data = new Object[UserDetails.size()][2];
for(int i=1; i<UserDetails.size(); i++) {
data[i][0] = UserDetails.get(i)[0];
data[i][1] = UserDetails.get(i)[1];
System.out.println(data[i][0]);
System.out.println(data[i][1]);
boolean match = false;
boolean limit = false;
int i=1;
do{
if((data[i][0] == username) && (data[i][1] == password)){
match = true;
UsernameField.setText(null);
PasswordField.setText(null);
close();
TablePage table;
table = new TablePage(username);
table.setVisible(true);
JOptionPane.showMessageDialog(null, "Sucessfully Logged In","Login Success",JOptionPane.INFORMATION_MESSAGE);
close();
}else{
if(i == UserDetails.size()){
limit=true;
}
i++;
}
} while(match==false || limit == true);
問題有點不清楚,有些變量'UserDetails'沒有正確地發佈在代碼中。如果您可以發佈所有代碼,可能會有所幫助。 –
不要硬編碼你的數組索引。 – Omore
爲什麼你使用這樣一個可怕的數據結構?當然你真正需要的是一個'Pair'的數組嗎? –
EJP