黑马程序员技术交流社区

标题: 大神帮忙,为什么用户登陆不了,但能存进去 [打印本页]

作者: 驰骋向前    时间: 2016-12-3 00:30
标题: 大神帮忙,为什么用户登陆不了,但能存进去
/*使用集合模拟用户注册登陆并进行测试。
其中:
注册即是向集合中添加数据。
User类:
属性:username password
测试类中:
控制台输入数据 含义
1 代表登陆
2 代表注册
3 代表退出
注册时如果集合中没有相同的数据就提示注册成功,否之注册失败。
登陆时用户输入的用户名和密码与集合中的数据进行匹配
如果相同就提示:登陆成功;否之提示登录失败。*/
import java.util.ArrayList;
import java.util.Iterator;
import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
            ArrayList<user> a = new ArrayList<user>();
            user u=new user("a","1234");
            user u1=new user("b","1234");
            a.add(u);
            a.add(u1);
           
            while (true){
                    System.out.println("=========================");
                    System.out.println("0.用户   1.登陆   2.注册    3.退出");
                    System.out.println("=========================");
                    Scanner sc =new Scanner(System.in);
                    int n=sc.nextInt();
                    switch (n){
                   
                    case 0 :
                            System.out.println("----用户信息----");
                            for (user user : a) {
                                    System.out.println(user.getUsername()+": "+user.getPassword());
                            }
                            break;
                    case 1 :
                            System.out.println("----登陆----");
                            System.out.println("请输入用户名");
                        String name=new Scanner(System.in).next();
                        System.out.println("请输入密码");
                        String password= new Scanner(System.in).next();
                            denglu(a,name,password);
                            break;
                    case 2 :
                            System.out.println("-----注册----");
                        System.out.println("请设置用户名");
                        String name1=new Scanner(System.in).next();
                        System.out.println("请设置密码");
                        String password1= new Scanner(System.in).next();
                            zhuche(a,name1,password1);
                            break;
                    case 3 :
                            System.out.println("您已退出");
                            System.exit(0);
                            break;
                    default:
                            System.out.println("无此选项");
                            break;       
                    }       
                   
            }

        }
    public static void denglu(ArrayList<user> a,String name,String password){
            for (user i : a) {
                    if(i.getUsername().equals(name) && i.getPassword().equals(password)){
                            System.out.println("登陆成功");
                            return;
                    }
                    System.out.println("用户名或密码错误,请重新输入");
            }
               
    }
    public static void zhuche(ArrayList<user> a,String name,String password){
            for (user i : a) {
                    if(! i.getUsername().equals(name)){
                            System.out.println("注册成功!");
                            user u=new user(name,password);
                            a.add(u);
                            return;
                    }       
                    System.out.println("用户名或密码错误,请重新输入");
            }
           
    }
  
}
作者: mjchzhl    时间: 2016-12-3 10:10
学习一下!





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2