JavaDay10--Homework(无数据库实现用户注册、登录)


实现注册、登录功能
某用户先注册(注册信息包括用户名、密码、个人格言),

然后使用注册的信息登录。

如果登录成功,则显示个人信息;否则显示“登录失败”。

package user;

/**
 * 用户基本描述类
 */
public class User {

	private String username;// 用户名
	private String password;// 密码
	private String motto;// 格言

	public User() {
	}

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String getMotto() {
		return motto;
	}

	public void setMotto(String motto) {
		this.motto = motto;
	}
}

package user;

/**
 * 针对用户进行操作的接口
 */
public interface UserDao {

	public void regist(User user);
	/*
	 * 用户注册功能
	 */
	public boolean isLogin(String username, String password);
	/*
	 * 用户登录时功能
	 */
	public void Login(String username, String password, String motto);
	/*
	 * 用户登录后功能
	 */

}
package user;

import java.util.ArrayList;

/**
 * 用户操作的具体实现类
 */
public class UserDaoImpl implements UserDao {

	private static ArrayList<User> array = new ArrayList<User>();

	@Override
	public void regist(User user) {
		array.add(user);// 把用户信息存储集合
	}

	@Override
	public boolean isLogin(String username, String password) {// 遍历集合,获取每一个用户
		boolean flag = false;
		for (User u : array) {
			if (u.getUsername().equals(username) // 判断该用户的用户名和密码是否和传递过来的匹配
					&& u.getPassword().equals(password)) {
				flag = true;
				break;
			}
		}
		return flag;
	}

	@Override
	public void Login(String username, String password, String motto) {
		System.out.println("用户" + username + ":您的密码为" + password + ",个人格言为"
				+ motto);
	}
}


package user;

import java.util.Scanner;

public class UserTest {
	/**
	 * 用户测试类
	 */
	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);
		UserDao ud = new UserDaoImpl();
		// 注册界面
		System.out.println("--------------注册界面--------------");
		System.out.println("请输入用户名:");
		String newUsername = sc.nextLine();
		System.out.println("请输入密码:");
		String newPassword = sc.nextLine();
		System.out.println("请输入格言:");
		String motto = sc.nextLine(); // 把用户名和密码封装到一个对象中
		User user = new User();
		user.setUsername(newUsername);
		user.setPassword(newPassword);
		// 调用注册功能
		// 多态
		// UserDao ud = new UserDaoImpl();
		// 具体类使用
		// UserDaoImpl udi = new UserDaoImpl();
		ud.regist(user);
		System.out.println("注册成功!");
		// 登录界面

		System.out.println("--------------登录界面--------------");
		while (true) {
			System.out.println("请输入用户名:");
			String username = sc.nextLine();
			System.out.println("请输入密码:");
			String password = sc.nextLine();
			// 调用登录功能
			// UserDao ud = new UserDaomImpl();

			boolean flag = ud.isLogin(username, password);
			if (flag) {
				System.out.println("登录成功!");
				ud.Login(username, password, motto);
				break;
			} else {
				System.out.println("用户名或者密码有误,登录失败");
			}
		}
		System.exit(0);
		sc.close();

	}
}



Copyright © 2018 Jin Hanquan. All rights reserved.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值