用java语言写一个简易版本的登录页面,包含用户注册、用户登录、用户注销、修改密码等功能

package com.Summer_0421.cn;

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

/**
 * @author Summer
 * 使用java面向对象之前的知识 完成规定的功能;
 * 附加要求 :
 * 1. 可以注册多个用户
 * 2. 每个注册的用户都可以登录
 * 3. 注册的用户名是唯一的
 * 4. 已经登录的用户 必须注销登录才可以继续登录
 */
public class Test05 {
	static Scanner sc = new Scanner(System.in);
	
	//用户名数组,用来存储用户名
	static int [] usernames = new int[5];
	
	//密码数组,用来存储所用的密码
	static int [] passwords = new int[5];
	
	//数组元素的真实数量
	static int count =0;
	
	
	
	
	public static void main(String[] args) {
		
		int input = 0;
		while (input!=4) {
			menu();
			input = sc.nextInt();
			switch (input) {
			case 1:
				System.out.println("1.欢迎注册用户账号");
				resign();//注册用户名方法
				break;
			case 2:
				System.out.println("2.欢迎登录用户账号");
				login();
				break;
			case 3:
				System.out.println("3.注销用户账号成功");
				break;
			case 4:
				System.out.println("4.退出成功!");
				break;
			case 5:
				System.out.println("5.修改账户密码");
				change();
				break;
			default:
				System.out.println("请输入有效的数字提示");
				break;
			}
			
		}
		

	}
    public static void change() {
    	System.out.println("请输入用户名:");
		int username = sc.nextInt();
		System.out.println("请输入密码:");
		int password = sc.nextInt();
		
		int index = check(username);
		//判断用户名是否存在,-1则为不存在
		if (index ==-1) {
			System.out.println("用户名不存在,请注册一个用户");
			return;
		}
		
		System.out.println("当前用户密码为"+password);
		System.out.println("请输入您要修改的密码:");
		passwords[index] = sc.nextInt();
		if (passwords[index]==password) {
			System.out.println("此密码与当前密码一致,请重新输入");
			change();
		}else{
			System.out.println("修改密码成功!");
		}
		
		
		
	}
	public static void login() {
		System.out.println("请输入用户名:");
		int username = sc.nextInt();
		System.out.println("请输入密码:");
		int password = sc.nextInt();
		
		int index = check(username);
		//判断用户名是否存在,-1则为不存在
		if (index ==-1) {
			System.out.println("用户名不存在,请重新输入一个");
			return;
		}
		
		if (usernames[index]==username&&passwords[index]==password) {
			System.out.println("登录成功");
		} else {
			System.out.println("用户名或密码输入错误,请重新输入");
		}
		
	}
/**
 * 用户注册
 *     
 */
	public static void resign() {
		System.out.println("请输入用户名:");
		int username = sc.nextInt();
		System.out.println("请输入密码:");
		int password = sc.nextInt();
		
		//判断是否已经被注册
		int index = check(username);
		if (index!=-1) {
			System.out.println("用户已经被注册,请重新输入");
			return;
		}
		//存入数组
		usernames[count]=username;
		passwords[count]=password;
		//数组元素累加
		count++;
		System.out.println("用户名"+username +"注册成功"+"\t数组的数量为"+count);
	
		//用户名密码数量超出数组的范围 (扩容)
		if (count == usernames.length) {
			usernames = Arrays.copyOf(usernames, usernames.length*2);
			passwords = Arrays.copyOf(passwords, passwords.length*2);
		}
		System.out.println("扩容后的长度为"+usernames.length);
	}
	
/**
 * 判断用户是否已经注册或者登录
 * count真实数量来进行判断
 * 如果用户名存在,返回当前用户名的下标
 * 如果不存在,返回-1
 */
	public static int check(int name){
		for (int i = 0; i < count; i++) {
			if (usernames[i]==name) {
				return i;
			}
		}
		return -1;
	}
/**
 * 登录菜单
 */
	public static void menu() {
		System.out.println("....欢迎来到登录系统....");
		System.out.println("___________________");
		System.out.println("1.欢迎注册用户账号");
		System.out.println("2.欢迎登录用户账号");
		System.out.println("3.注销用户账号成功");
		System.out.println("4.退出成功!");
		System.out.println("5.修改密码");
		
	}

}

猜你喜欢

转载自blog.csdn.net/weixin_44458686/article/details/89440680