我尝试对 NRIC 进行验证。仅当首尾为字母且身份证长度为9时有效。例如S1234567G。
当用户输入错误的格式时会弹出错误的格式信息,例如 S123D 和 S12345678G。这是我的代码。
boolean isLetter = true;
} else if (nric.equals("")) {
JOptionPane.showMessageDialog(null, "Please enter NRIC");
} else if (isLetter == false) {
for (int count = 0; count < nric.length(); count++) {
char i = nric.charAt(count);
if ((i != 9) && (!Character.isLetter(nric.charAt(0)))
&& (!Character.isLetter(nric.length() - 1)))
isLetter = false;
}
if (isLetter == false) {
JOptionPane.showMessageDialog(null, "NRIC wrong format");
}
这不是全部代码。我也对其他文本字段进行了其他验证。我只是将 NRIC 部分分开,因为我知道这里有一些错误。
无论我输入什么,它都会在我的数据库中创建一条记录。即使格式错误,它也不会显示错误消息。有人可以帮我检查一下吗?提前致谢。