我用java编了一个三重密码验证,请各位高手看一下哪里还需要改进
学java十几天了,今天用了一下午编了一个80行的验证密码的程序,自己觉得功能基本上都具备了,但总感觉跟实际相差很远,请高手指点一下这个程序还可以从哪些方面改进。
/*
*密码输入验证
*/
import javax.swing.*;
public class Mima
{
public static void main(String[] args)
{
boolean f = false;
boolean t = false;
boolean g = false;
for (int i = 0; i < 3; i++)
{
String input = JOptionPane.showInputDialog( "请输入用户名: ");
String inputname = input;
String realname = "ljdfd ";
f = realname.equals(inputname);
if (i == 2 && f == false)
{
System.out.println( "对不起,你输入的该用户名仍不正确,系统将强制退出, "); break;
}
else if (f == false)
{
System.out.println( "你输入的用户不存在,请重新输入! ");
}
else
{
break;
}
}
//验证用户名部分
if (f == true)
{
for (int i = 0; i < 3; i++)
{
String input = JOptionPane.showInputDialog( "请输入密码: ");
String inputpassage = input;
String realpassage = "qwerty ";
t = realpassage.equals(inputpassage);
if (i == 2 && t == false)
{
System.out.println( "对不起,你试图猜解密码,系统将强制退出, "); break;
}
else if (t == false)
{
System.out.println( "你输入的密码有误,请重新输入! ");
}
else
{
break;
}
}
}
//验证密码处
if(f&&t)
{
for(int i = 0;i < 3;i++)
{
String input = JOptionPane.showInputDialog( "请输入验证码: ");
String inputNumber = input;
String realNumber = "123456 ";
g = realNumber.equals(inputNumber);
if(g==false&&i==2)
{
System.out.println( "对不起,你输入的验证码仍不正确,系统将强制退出! ");break;
}
else if(g==false)
{
System.out.println( "你输入的验证码不正确,请重新输入! ");
}
else
{
System.out.println( "欢迎进入程序,我将带你进入我的空间,你现在已进入程序,欢迎,欢迎! ");break;
}
}
}
//验证验证码处
if(!(f&&f&&t&&g))
{
System.out.println( "很遗憾,你已从程序中退出 ");
}
else
{
System.out.println( "你已进入程序入口。 ");
}
System.exit(0);
}
}
[解决办法]
如果能够把信息显示在弹出窗口而不是控制台就更好了。
[解决办法]
//验证用户名部分
//验证密码处
//验证验证码处
把代码抽出来,分别写到三个方法里面去 结构层次更清晰一些