在JAVA里,用户登录,系统对输入的用户名和密码验证,验证次数最多三次正确的赢户名密码自己输入

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在JAVA里,用户登录,系统对输入的用户名和密码验证,验证次数最多三次正确的赢户名密码自己输入相关的知识,希望对你有一定的参考价值。

public static void main(String[] args)

try
int c = 0;
while (true)
byte[] b1 = new byte[1024];
byte[] b2 = new byte[1024];
System.out.print("请输入用户名:");
int x = System.in.read(b1);
System.out.print("请输入密码:");
int y = System.in.read(b2);
String username = new String(b1, 0, x - 2);
String password = new String(b2, 0, y - 2);

if (username.equals("zhangsan") && password.equals("123456"))
System.out.println("登陆成功!!!");
break;
else if(c<2)
System.out.println();
System.out.println("登陆失败,请重新输入!!!");

else
System.out.println("对不起三次已过!!!");
System.exit(0);

c++;

catch (IOException e)
// TODO Auto-generated catch block
e.printStackTrace();



粗略的写了一个,希望对你有所帮助,
也希望你不是简单的抄代码应付习题,要把东西学到自己的脑子里。
参考技术A package com.demo.login;
import java.util.Scanner;
public class UserLoginInfo
public static void main(String[] args)
//用户正确登陆用户名
final String USER = "jim";
//用户正确登陆密码
final String PWD = "123456";
int num = 0;
while (num < 3)
System.out.println("请输入用户名:");
Scanner sc = new Scanner(System.in);
String username = sc.next();
System.out.println("请输入密码:");
String password = sc.next();
if (username.equals(USER)
&& password.equals(PWD))
System.out.println("欢迎登陆MyShoping系统!");
break;
else
//错误一次,自增一次,当num=3的时候,程序将跳出本次循环,不再执行!
num++;
//判断用户还有几次登陆机会!
int i = 3-num;
if (i > 0)
System.out.println("输入错误!您还有"+i+"次机会");
else
//如果3次都没有输入正确,程序将终止!
System.out.println("对不起,输入错误3次,本程序将终止!");
System.exit(0);




参考技术B 没懂你的这个验证过程是咋回事~~
3次正确的用户自己输入~~他都输入最少3次了~~追问

就是不要固定正确的,那个是自己输入

追答

这个是你的作业,你最好独立完成

参考技术C 你自己想写的一个简单的项目?追问

不是

追答

public static void main(String[] args)
Scanner sc=new Scanner(System.in);
System.out.println("请输入用户名:");
String name=sc.nextLine();
System.out.println("请输入密码:");
String password=sc.nextLine();
if(("lili".equals(name))&&("123".equals(password)))
System.out.println("欢迎登陆Myshoping系统!");
return;
else
System.out.println("输入错误!你还有两次机会!");

System.out.println("请输入用户名:");
String name1=sc.nextLine();
System.out.println("请输入密码:");
String password1=sc.nextLine();
if(("lili".equals(name1))&&("123".equals(password1)))
System.out.println("欢迎登陆Myshoping系统!");
return;
else
System.out.println("输入错误!你还有一次机会!");

System.out.println("请输入用户名:");
String name2=sc.nextLine();
System.out.println("请输入密码:");
String password2=sc.nextLine();
if(("lili".equals(name2))&&("123".equals(password2)))
System.out.println("欢迎登陆Myshoping系统!");
return;
else
System.out.println("输入错误!你失败了");

Java IO流 之 国际化 多语言实例

http://www.verejava.com/?id=16994875552823

/**
    题目: 民航飞机票用户登录验证系统
            1. 键盘输入选择英文还是中文系统 (1:中文, 2:英文)
            2. 键盘输入用户名和密码
            3. 对输入的用户名和密码判断不能为空
            4. 对输入的用户名和密码进行登录验证

    思路: 
        1. 抽象出类:
            1.1 用户(User)
            1.2 用户管理类(UserManager)
        2. 找出类关系:
            2.1 User -> UserManager
        3. 找出类属性:
            3.1 User(用户名,密码)
        4. 找出方法:
            4.1 用户登录验证 UserManager{boolean isLogin(User user)}
*/
import java.util.Scanner;
import java.util.Locale;
import java.util.ResourceBundle;
import java.text.MessageFormat;
public class TestLocaleApplication
{
    public static void main(String[] args)
    {
        Scanner in=new Scanner(System.in);
        System.out.println("请选择中文 还是 英文环境 (1:中文, 2:英文)");
        int number=Integer.parseInt(in.nextLine());
        //根据输入的数字创建对应的国家语言
        Locale locale=LocaleFactory.createLocale(number);
        ResourceBundle bundle=ResourceBundle.getBundle("validation",locale);

        System.out.println(bundle.getString("inputUsername"));
        String username=in.nextLine();
        System.out.println(bundle.getString("inputPassword"));
        String password=in.nextLine();
        //输入验证
        if(username==null||username.equals(""))
        {
            System.out.println(bundle.getString("validUsername"));
            return;
        }
        if(password==null||password.equals(""))
        {
            System.out.println(bundle.getString("validPassowrd"));
            return ;
        }

        //验证登录
        User user=new User(username,password);
        UserManager um=new UserManager();
        if(um.isLogin(user))
        {
            System.out.println(MessageFormat.format(bundle.getString("loginSuccess"),username,username));
        }
        else
        {
            System.out.println(bundle.getString("loginFail"));
        }
    }
}
class User
{
    private String username;
    private String password;

    public User(String username,String password)
    {
        this.username=username;
        this.password=password;
    }

    public String getUsername()
    {
        return this.username;
    }
    public void setUsername(String username)
    {
        this.username=username;
    }
    public String getPassword()
    {
        return this.password;
    }
    public void setPassword(String password)
    {
        this.password=password;
    }
}
class UserManager
{
    /**
        用户登录验证
    */
    public boolean isLogin(User user)
    {
        if(user!=null&&user.getUsername().equals("admin")&&user.getPassword().equals("1"))
        {
            return true;
        }
        return false;
    }
}
/**
    创建语言Locale类的工厂
*/
class LocaleFactory
{
    /**
        根据输入 (1:创建中文Locale, 2:英文 创建英文的Locale)
    */
    public static Locale createLocale(int number)
    {
        if(number==1)
            return new Locale("zh","CN");
        if(number==2)
            return new Locale("en","US");
        return null;
    }

}

http://www.verejava.com/?id=16994875552823

以上是关于在JAVA里,用户登录,系统对输入的用户名和密码验证,验证次数最多三次正确的赢户名密码自己输入的主要内容,如果未能解决你的问题,请参考以下文章

Java IO流 之 国际化 多语言实例

Mobtech 秒验应用介绍

如何取消windows10 微软账户登录

用java模拟设计一个简单的“用户注册”程序。当用户输入用户名和密码时,单击“注

java web开发如何实现用用户账号和手机号进行登录?

聊聊系统设计:有状态无状态