我想创建一个应用程序,要求用户从输入对话框输入密码。密码必须少于10个字符且超过6个字符。此外,密码应至少包含一个数字或字母。当密码满足所有要求时,要求用户再次输入密码,并且在第二个密码与第一个密码匹配之前不要让用户继续。 我的代码如下,但它没有检查字母或数字。 有人可以帮忙吗?
import javax.swing.*;
import java.awt.*;
import java.util.Scanner;
public class Password{
public static void main(String[] args){
String firstPassword="";
String secondPassword="";
char charChecked;
boolean letter = false;
boolean digit = false;
int len=firstPassword.length();
firstPassword= JOptionPane.showInputDialog("ENter");
if (( len<6 || len>10) || ! (Character.isLetterOrDigit(firstPassword.charAt(len))) )
{firstPassword= JOptionPane.showInputDialog("Enter the Correct Format of password");
}
if ((len>=6|| len<=10) || (Character.isLetterOrDigit(firstPassword.charAt(len))) )
do
{
secondPassword= JOptionPane.showInputDialog("Please enter again the password to confirm");
}
while (!(firstPassword.equals(secondPassword)));
if (firstPassword.equals(secondPassword))
{
JOptionPane.showMessageDialog(null,"Accepted");
}
}
}
答案 0 :(得分:0)
int len=firstPassword.length();
firstPassword= JOptionPane.showInputDialog("ENter");
你的代码被颠倒了...你需要在输入之后调用长度。
firstPassword= JOptionPane.showInputDialog("ENter");
int len=firstPassword.length();
尝试说些什么......