所以我正在制作一个小程序登录。我有4个表格,你需要填写,如果你点击按钮登录,那么我想检查表格是否填写,如果没有,你会收到一条消息,说明你还需要填写哪个表格。我想到2这样做的方法。一种比另一种更容易的方式。 简单的方法:
static String [] Check = {SendMail.FEText, SendMail.FWText, SendMail.TEText, SendMail.TWText};
public static boolean fullFilled() {
for (String s: Check) {
if (s.equals("")) {
JOptionPane.showMessageDialog(null, "Je bent vergeten om iets in te vullen.", "Vergeten", JOptionPane.ERROR_MESSAGE);
return false;
} else {
return true;
}
}
return false;
}
还有一个enum
,但我不知道如何完成这个:
public enum Check {
FACEBOOK_EMAIL("FaceBook emailadres", SendMail.FEText),
FACEBOOK_WACHTWOORD("FaceBook wachtwoord", SendMail.FWText),
TOTO_EMAIL("Toto emailadres", SendMail.TEText),
TOTO_WACHTWOORD("Toto wachtwoord", SendMail.TWText);
public String formName;
public String stringName;
Check(String formName, String stringName) {
this.formName = formName;
this.stringName = stringName;
}
}
public static boolean fullFilled() {
for (String s: Check) {
if (s.equals("")) {
JOptionPane.showMessageDialog(null, "Je bent vergeten om " + s.formName + "iets in te vullen.", "Vergeten", JOptionPane.ERROR_MESSAGE);
return false;
} else {
return true;
}
}
return false;
}
我希望这条消息能说“Je bent vergeten om FaceBook emailadres in te vullen。”如果您忘记填写facebookemail(FEText)
答案 0 :(得分:0)
您可以迭代该枚举的所有值,然后针对每个值检查stringName
是否为空。如果是,则将其添加到messageBody
,并在对话框中显示它是否为空。
请注意,下面的检查会忽略所有空格,这可能是您想要的。
public static boolean fullFilled() {
String messageBody = "";
for (Check check: Check.values()) {
if (check.stringName.trim().isEmpty()) {
messageBody = messageBody + "Je bent vergeten om " + check.formName + "iets in te vullen." + "\n";
}
}
if(!messageBody.trim().isEmpty()){
JOptionPane.showMessageDialog(null, messageBody, "Vergeten", JOptionPane.ERROR_MESSAGE);
return false;
}
return true;
}