0

我想创建一个应用程序,要求用户从输入对话框中输入密码。密码必须少于 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");
}

}
}
4

1 回答 1

0
int len=firstPassword.length();

firstPassword= JOptionPane.showInputDialog("ENter");

你的代码被反转了......你需要在输入一些东西后调用长度。

firstPassword= JOptionPane.showInputDialog("ENter");
int len=firstPassword.length();

试着说点什么...

于 2013-10-11T16:19:57.570 回答