黑马程序员技术交流社区
标题:
一个简单的登录注册案例演示
[打印本页]
作者:
Aaron_wang
时间:
2015-11-23 23:16
标题:
一个简单的登录注册案例演示
package com.itheima.login_register;
import java.util.HashSet;
import java.util.Scanner;
public class View {
/**
* 某网页用户界面(DOS):
* ----------XX网站------------
* 1.用户登录
* 2.用户注册
* ---------------------------
* 请选择要操作的选项:
* 1
* 用户登录,输入用户名和密码,验证是否已存在,打印信息
* 2
* 用户注册:
* 向HashSet集合中添加用户类元素,用户类复写hashCode和equals方法
*
* @author Aaron
*/
//主函数,执行入口
public static void main(String[] args) {
new View();//启动界面
}
//创建用户信息集合
private HashSet<User> usersInfo = new HashSet<User>();
//启动界面
public View() {
while(true){
System.out.println("----------XX网站----------");
System.out.println("1.用户登录");
System.out.println("2.用户注册");
System.out.println("请选择要操作的选项:");
int choose = new Scanner(System.in).nextInt();
switch(choose){
case 1:
System.out.println("请输入用户名:");
String nameLogin = new Scanner(System.in).nextLine();
System.out.println("请输入密码:");
String passwordLogin = new Scanner(System.in).nextLine();
login(nameLogin,passwordLogin);
break;
case 2:
System.out.println("请输入用户名:");
String nameRegister = new Scanner(System.in).nextLine();
System.out.println("请输入密码:");
String passwordRegister = new Scanner(System.in).nextLine();
register(nameRegister,passwordRegister);
break;
default:
System.out.println("没有这个选项");
}
}
}
private void register(String nameRegister, String passwordRegister) {
User user = new User(nameRegister, passwordRegister);
//判断用户知否已存在
for (User user_exist : usersInfo) {
if(user_exist.getName().equals(nameRegister)){
System.out.println("抱歉,该用户已存在!");
return;
}
}
usersInfo.add(user);
System.out.println("用户"+nameRegister+"注册成功!");
}
private void login(String nameLogin, String passwordLogin) {
User user = new User(nameLogin, passwordLogin);
if(usersInfo.contains(user)){
System.out.println("登陆成功!");
}
else{
System.out.println("用户名或密码错误!");
}
}
}
复制代码
package com.itheima.login_register;
public class User {
/**
* 用户类:账户,密码
*/
private String name;
private String password;
public User(String name, String password) {
super();
this.name = name;
this.password = password;
}
public User() {}
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;
}
@Override
public String toString() {
return "User [name=" + name + ", password=" + password + "]";
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((name == null) ? 0 : name.hashCode());
result = prime * result
+ ((password == null) ? 0 : password.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
User other = (User) obj;
if (name == null) {
if (other.name != null)
return false;
} else if (!name.equals(other.name))
return false;
if (password == null) {
if (other.password != null)
return false;
} else if (!password.equals(other.password))
return false;
return true;
}
}
复制代码
运行结果:
----------XX网站----------
1.用户登录
2.用户注册
请选择要操作的选项:
2
请输入用户名:
Aaron
请输入密码:
123456
用户Aaron注册成功!
----------XX网站----------
1.用户登录
2.用户注册
请选择要操作的选项:
1
请输入用户名:
Aaron
请输入密码:
123456
登陆成功!
----------XX网站----------
1.用户登录
2.用户注册
请选择要操作的选项:
2
请输入用户名:
Aaron
请输入密码:
12
抱歉,该用户已存在!
----------XX网站----------
1.用户登录
2.用户注册
请选择要操作的选项:
1
请输入用户名:
aaron
请输入密码:
123456
用户名或密码错误!
作者:
Aaron_wang
时间:
2015-11-23 23:18
先顶一个{:3_46:}
作者:
一江夜雨
时间:
2015-11-23 23:25
过得 看看
作者:
Aaron_wang
时间:
2015-11-24 21:23
大神呐,写的不错{:3_60:}
作者:
wangdaban
时间:
2015-11-24 21:51
小伙子,写的不错
作者:
一江夜雨
时间:
2015-11-24 21:56
赞一个 {:2_30:}
作者:
hrfhwy
时间:
2015-11-24 23:22
写的很好,谢谢分享
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2