无法获得正确的密码格式

时间:2013-10-11 16:16:41

标签: java passwords character

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

}
}

1 个答案:

答案 0 :(得分:0)

int len=firstPassword.length();

firstPassword= JOptionPane.showInputDialog("ENter");

你的代码被颠倒了...你需要在输入之后调用长度。

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

尝试说些什么......