标题在欺骗,但是我真的不知道该怎么问。
我在玩Java。这是我的代码:
package zodiac;
import java.util.Scanner;
public class Zodiac {
public static void main(String[] args) {
Scanner username = new Scanner(System.in);
String uname;
System.out.println("Please enter your username: ");
uname = username.nextLine();
boolean test = (uname.length() <= 3);
int trip = 0;
while (trip == 0) {
trip++;
if (test) {
trip = 0;
System.out.println("Sorry username is too short try again");
uname = username.next();
}
else {
System.out.println("Welcome Mr/Mrs: " + uname);
}
}
}
}
我想做的是提示用户输入用户名,一旦他们检查名称是否小于或等于3,请再次输入用户名,如果用户名超过3个字符,则打印欢迎先生/先生。 blablabla
目前,如果用户名的字符数超过3个字符,它将打印出欢迎消息,但是,如果您输入的字符数不超过3个字符,它将告诉您再次输入用户名;如果键入的用户名后缀超过3个字符,它将不断告诉您用户密码太短。
我怎样才能解决这个问题。我最近刚开始在大学学习Java,但是我的老师缺乏教学的动力,所以我必须上互联网了,谢谢。
最佳答案
您可能需要在代码中考虑两件事:
如果布尔值足够,则
现在您的问题是:您不会在循环中再次检查所需的最小插入字符串长度!这段代码可以帮助您理解我提到的所有要点:
public static void main(String[] args) {
Scanner username = new Scanner(System.in);
String uname;
System.out.println("Please enter your username: ");
boolean tooShort = true;
do {
uname = username.next();
if (uname.length() <= 3)
System.out.println("Sorry username is too short try again");
else {
System.out.println("Welcome Mr/Mrs: " + uname);
tooShort = false;
}
} while (tooShort);
username.close();
}
关于java - Java中检查输入的问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33866522/