JAVA實現用戶注冊,登錄,修改密碼


class

import java.util.Arrays;
import java.util.Scanner;

public class User {
    String name;
    String password;
    String sex ;
    int age ;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getPassword() {
        return password;
    }
    public void setPassword(String password) {
        this.password = password;
    }
    public String getSex() {
        return sex;
    }
    public void setSex(String sex) {
        this.sex = sex;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    
    public User[] shuzu(User[] users) {  //初始化數組,預存2人
        users[0].name = "qqq";
        users[0].password = "123";
        users[1].name = "bbb";
        users[1].password = "456";
    for (int i = 0; i < users.length; i++) {
        System.out.println(users[i].name+" "+users[i].password);
    }
        return users;
    }
//______________________注冊__________________________________    
    public User[] register(String newn,String newp,User[] users){
        users= Arrays.copyOf(users, users.length+1);//數組擴容+1
        User q = new User() ;
//        System.out.println(users.length); //輸出新數組長度,輔助校驗數組擴容
        int a = 0 ;
        for (int i = 0; i < users.length-1; i++) { //校驗用戶名是否重復,重復 a+1
            if(users[i].name.equals(newn) ){
                a++;
            }
        }
            if(a == 0){//a=0.用戶名不重復,賦值
                users[users.length-1] = q ;//新建對象存入數組最后一個位置
                users[users.length-1].name = newn;
                users[users.length-1].password = newp;
                System.out.println("注冊成功");
            }else{ // 用戶名重復,提示
                System.out.println("用戶名重復");
            }
//        for (int i = 0; i < users.length; i++) { //輸出現有用戶名,輔助校驗
//        System.out.println(users[i].name);
//        }    
            return users;//返回數組
    }
//______________________登錄__________________________________
    int flag;// 輔助循環判定
    public void login(String newn,String newp,User[] users){
        for (int i = 0; i < users.length; i++) {//循環遍歷數組
            System.out.println(users[i].name+"標記"+i+"標記"+users[i].password);//遍歷輸出現在數組
            if(newn.equals(users[i].name) && newp.equals(users[i].password) ){
                flag = 0; //同一下標的對象的用戶名和密碼與輸入的用戶名和密碼都一樣,flag賦值0
                break;//退出循環
            }else{
                flag =1;//同一下標的對象的用戶名和密碼與輸入的用戶名和密碼不一樣,flag賦值0,說明輸入的用戶名和密碼有問題
            }
        }
//        System.out.println(newn + newp);
        if(flag == 0){  // 給出系統提示
            System.out.println("登錄成功");
        }else{
            System.out.println("用戶名或密碼錯誤,登錄失敗");
        }
    }
//________________________________修改密碼——————————————————————————————————
    public User[] change(String oldn,String oldm,User[] users) {
        int a = 0 ;
        for (int i = 0; i < users.length; i++) {//循環遍歷數組,校驗輸入的用戶名是否存在
            if(oldn.equals(users[i].name)){
                a = i;
                flag = 0;
            }else{
                flag = 1 ;
            }
        }
        if(flag == 0){//輸入的用戶名存在,輸入的新密碼替換舊密碼
            users[a].password = oldm;
            System.out.println("密碼修改成功");
            System.out.println("用戶名:"+users[a].name +"   "+"新密碼"+users[a].password);
        }else{//輸入的用戶名不存在,提示輸入有誤
            System.out.println("輸入的用戶名未查詢到");
        }
        return users;//返回新數組
    }    

}    

demo

import java.util.Arrays;
import java.util.Scanner;

public class Demo1{//_____________________用戶名密碼————————————————————    
    public static void main(String[] args) {
    User us = new User();
    User us1 = new User();
    User us2 = new User();
    User[] users = {us1,us2};
    us.shuzu( users);//初始化數組
    for (int i = 1; i > 0; i++) {     //循環實現登錄注冊    
        System.out.println("請選擇操作:1注冊,2登錄    3修改密碼");
        Scanner sc = new Scanner(System.in);
        String num = sc.next();
            if(num.equals("1")){   // 注冊功能
                System.out.println("_________注冊__________");
                System.out.println("請創建用戶名");
                us.setName(sc.next());
                System.out.println("請創建密碼");
                us.setPassword(sc.next());
        //        System.out.println(us.getName());
                users = us.register(us.getName(),us.getPassword(), users);     
            }else if(num.equals("2")){ // 登錄功能
                System.out.println("__________登錄_________");
                System.out.println("請輸入用戶名");
                String newn = sc.next();
                System.out.println("請輸入密碼");
                String newp = sc.next();
                us.login(newn, newp, users);
            }else if(num.equals("3")){ //修改密碼
                System.out.println("__________修改密碼_________");
                System.out.println("請輸入舊用戶名");
                us.setName(sc.next());
                System.out.println("請輸入新的密碼");
                us.setPassword(sc.next());
                users = us.change(us.getName(), us.getPassword(), users);
            }
            else{   //輸入值有誤,提示
                System.out.println("輸入的值有誤");
            }
        }
    }
}    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM