我编写了一个银行程序。我正处于用户必须输入其图钉的地步,必须将其与从文本文件中获取的图钉进行比较。问题是,我有一个if语句,并且满足条件,但是它一直在给我一个好像未满足的语句。
我已经尝试过switch语句,甚至使用布尔值,但是它不起作用
public String getPin(){
return pin;
}
String pin2 = lbl_Pin.getText();
System.out.println(pin2);
System.out.println(getPin());
// Allows the user to select what they want to do after they enter the
// correct pin
if (pin2.equals(String.valueOf(getPin()))) {
btn_SelectLoan.setEnabled(true);
btn_SelectWithdraw.setEnabled(true);
btn_SelectDeposit.setEnabled(true);
btn_Balance.setEnabled(true);
lbl_Loan.setVisible(true);
lbl_Withdraw.setVisible(true);
lbl_Deposit.setVisible(true);
lbl_Balance.setVisible(true);
}
// Displays invalid if the pin is not correct
else {
lbl_Pin.setText("Invalid");
}
我输入了正确的密码,我确定这是正确的,因为我显示了正确的密码以及输入的密码,它们相同,但是提供的答案无效
答案 0 :(得分:-1)
这可能是编码问题。从文本文件中读取图钉时,请确保文本的编码与lblP = _Pin的编码匹配。
在阅读文本文件时,可以在打开文件时提及所需的编码。
答案 1 :(得分:-1)
我发现了问题。从文本文件获取图钉时,在值中添加了“ / r”。所以我只是用引脚的实际值创建了一个子字符串。