试图让程序重复
Trying to get program to repeat
程序会检查输入的电子邮件地址是否包含 @ 和 .edu
如果不需要,则需要返回执行这些步骤,我想我可以使用一个 do-while,但我还没有一个可以工作,我如何将我的 if-else 语句嵌套在一个 do-while 中?谢谢!
if (UserEmail.contains("@")) {
if (UserEmail.contains(".edu")){
System.out.print("Please create a password: ");
PassWord = kb.nextLine();
System.out.println(UserEmail.replaceAll("@\S+?\.edu\b", ""));
System.out.print("Your password is " + PassWord);
} else {
System.out.print("email is not valid Please, try again.")
} else {
System.out.print("email is not valid Please, try again.");
// at this point it should repeat and ask for the email again
}
}
为了简化您的 if-else
代码,考虑使用
if (UserEmail.contains("@") && UserEmail.contains(".edu")) {
.
.
}
这可以包裹在 do - while
do {
if (UserEmail.contains("@") && UserEmail.contains(".edu")) {
.
.
break;
}
System.out.print("email is not valid Please, try again.")
}
while (true);
您可以简单地在您的逻辑之前添加类似 boolean correctEmail = false
的内容,并且在您的 if
语句的开头,您可以编写 while(!correctEmail) {
在密码创建结束时,您将 correctEmail
设置为 true
,然后就可以开始了。
定义方法 isValid(String email, String password,... some more params)
并将所有检查逻辑放入该方法中。
写这样的东西
while (!isValid(the params)) {
//ask all the credentials
}
非常简单。
bool trigger = (true/false);
do {
if (...) {
if (...){...}
else if (...) {...}
else {
print out retry statement;
trigger = false;
}
}
}
while (trigger == true);
不要忘记末尾的分号。
程序会检查输入的电子邮件地址是否包含 @ 和 .edu 如果不需要,则需要返回执行这些步骤,我想我可以使用一个 do-while,但我还没有一个可以工作,我如何将我的 if-else 语句嵌套在一个 do-while 中?谢谢!
if (UserEmail.contains("@")) {
if (UserEmail.contains(".edu")){
System.out.print("Please create a password: ");
PassWord = kb.nextLine();
System.out.println(UserEmail.replaceAll("@\S+?\.edu\b", ""));
System.out.print("Your password is " + PassWord);
} else {
System.out.print("email is not valid Please, try again.")
} else {
System.out.print("email is not valid Please, try again.");
// at this point it should repeat and ask for the email again
}
}
为了简化您的 if-else
代码,考虑使用
if (UserEmail.contains("@") && UserEmail.contains(".edu")) {
.
.
}
这可以包裹在 do - while
do {
if (UserEmail.contains("@") && UserEmail.contains(".edu")) {
.
.
break;
}
System.out.print("email is not valid Please, try again.")
}
while (true);
您可以简单地在您的逻辑之前添加类似 boolean correctEmail = false
的内容,并且在您的 if
语句的开头,您可以编写 while(!correctEmail) {
在密码创建结束时,您将 correctEmail
设置为 true
,然后就可以开始了。
定义方法 isValid(String email, String password,... some more params)
并将所有检查逻辑放入该方法中。
写这样的东西
while (!isValid(the params)) {
//ask all the credentials
}
非常简单。
bool trigger = (true/false);
do {
if (...) {
if (...){...}
else if (...) {...}
else {
print out retry statement;
trigger = false;
}
}
}
while (trigger == true);
不要忘记末尾的分号。