我需要用户输入账号密码,要求输入的账号有一个@符号,且不能再第一位和最后一位,要求密码有大小写并且6位数,否则输出账号密码格式错误
时间: 2024-09-25 19:06:55 浏览: 52
在Java中,你可以创建一个控制台应用,利用`Scanner`类来获取用户的账号和密码输入,并进行格式验证。以下是一个简单的示例:
```java
import java.util.Scanner;
public class AccountPasswordValidator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入账号(格式:username@example.com,用户名不能以@开头或结尾):");
String username = scanner.nextLine();
if (!isValidUsername(username)) {
System.out.println("账号格式错误,请检查是否以@开始或结束,以及是否在首位或末位!");
return;
}
System.out.println("请输入6位包含大写字母和小写字母的密码:");
String password = scanner.nextLine();
if (!isValidPassword(password)) {
System.out.println("密码格式错误,必须是6位,包含大小写字母!");
} else {
System.out.println("账号和密码输入成功");
}
scanner.close();
}
private static boolean isValidUsername(String username) {
if (username.isEmpty() || username.charAt(0) == '@' || username.lastIndexOf('@') != username.length() - 1) {
return false;
}
return true;
}
private static boolean isValidPassword(String password) {
if (password.length() != 6 || !Character.isLetter(password.charAt(0)) || !Character.isUpperCase(password.charAt(0))
|| !Character.isLowerCase(password.charAt(1)) || !Character.isDigit(password.charAt(2))) {
return false;
}
return true;
}
}
```
在这个例子中,`isValidUsername` 和 `isValidPassword` 方法分别用于检查账号和密码的格式。
阅读全文