我还是比较新的Java,想尝试一些与字符串相关的新东西。我试着为用户编写一个代码,输入4到12个字符之间的密码,到目前为止它工作正常。但是在这个过程中,我不得不在这里和那里做一些修复,老实说它确实看起来很混乱,就像一个拼图,所有的部分都适合但不能完整的图片。我希望我的代码能够更加“优化”,这样我就可以知道像这样的代码如何工作,你知道,仅供将来参考。所以任何帮助表示赞赏,请查看我的代码,看看是否有任何可以改进的地方。谢谢!
import static java.lang.System.*;
import java.util.Scanner;
public class PasswordWithLimit {
public static void main (String[] args){
Scanner scan = new Scanner (in);
out.print("Enter your password(4-12 characters): ");
String pass = scan.nextLine () + " ";
char check = pass.charAt (11);
if (pass.indexOf (" ") == 3){
out.println("Please enter a valid password: ");
}
if (Character.isSpaceChar(check) || Character.isWhitespace(check)){
out.println("Your password is " + pass);
}
else{
out.println("Please enter a valid password");
}
}
}
答案 0 :(得分:0)
我建议使用String的长度属性。此示例提示用户输入其密码并继续询问他们,直到他们输入符合要求的内容。
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.print("Enter your password (4 to 12 characters)"); // Prompt the user
boolean valid = false;
while (!valid) {
String password = in.nextLine();
if (password.length() > 3 && password.length() < 13) {
valid = true; // Length between 4 and 12, we can stop asking.
System.out.println("Your password is " + password);
} else {
System.out.print("Please enter a valid password: "); // Invalid length, ask again.
}
}
in.close();
}