admin管理员组文章数量:1567276
package com.itheima;
import java.util.Scanner;
import java.util.HashSet;
import java.util.regex.Pattern;
class User{
private String name;
private String password;
private String birth;
private String number;
private String mail;
public String getName(){
return name;
}
public String getPassword(){
return password;
}
public String getBirth(){
return birth;
}
public String getNumber(){
return number;
}
public String getMail(){
return mail;
}
public void setName(String name){
this.name = name;
}
public void setNumber(String number)
{
this.number = number;
}
public void setPassword(String password)
{
this.password = password;
}
public void setBirth(String birth)
{
this.birth = birth;
}
public void setMail(String mail)
{
this.mail = mail;
}
//重写hashCode
public int hashCode(){
return name.hashCode();
}
//重写equals方法
public boolean equals(Object obj)
{
if(this == obj)
return true;
if(!(obj instanceof User))
return false;
User stu = (User)obj;
boolean b = this.name.equals(stu.name);
return b;
}
}
public class Main{
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
HashSet hs = new HashSet();
String data = new String();
while(true) {
System.out.println("---------------模拟用户注册-------------");
User user = new User();
System.out.print("请输入用户名:");
data = in.next();
user.setName(data);
System.out.print("请输入密码:");
data = in.next();
user.setPassword(data);
while(true)
{
System.out.print("请再一次输入密码:");
data = in.next();
if(data.equals(user.getPassword()))
break;
else
{
System.out.println("密码不一致");
}
}
while(true) {
System.out.print("请输入生日(格式为yyyy-mm-dd):");
data = in.next();
if (isBirth(data))
{
user.setBirth(data);
break;
}
else
System.out.println("输入的生日格式错误,请重新输入");
}
while(true){
System.out.print("请输入手机号:");
data = in.next();
if(length(data) && numbermatch(data))
{
user.setNumber(data);
break;
}
else
System.out.println("手机号输入的格式有误,请重新输入");
}
while(true)
{
System.out.print("请输入邮箱:");
data = in.next();
if(mailmatch(data))
{
user.setMail(data);
break;
}
else
System.out.println("邮箱输入错误,请重新输入");
}
if(!hs.add(user))
System.out.println("用户已存在,请重新注册");
else
System.out.println("注册成功!!!!!");
System.out.print("继续注册输入1,退出输入0:");
int bbq = in.nextInt();
if(bbq == 0)
break;
}
}
//匹配生日的格式
public static boolean isBirth(String str)
{
if(Pattern.matches("^\\d{4}-\\d{1,2}-\\d{1,2}", str))
return true;
else
return false;
}
//匹配手机号码的长度
public static boolean length(String str)
{
if(str.length() != 11)
return false;
else
return true;
}
//匹配手机号码前两位
public static boolean numbermatch(String str)
{
char[] charArr = str.toCharArray();
String st = charArr[0] + "" +charArr[1];
String[] formats = {"13", "15", "17", "18"};
for(int i = 0; i < 4; i++)
if(st.equals(formats[i]))
return true;
return false;
}
//匹配邮箱
public static boolean mailmatch(String str)
{
char[] charArr = str.toCharArray();
for(int i = 0; i < str.length(); i++)
{
if(charArr[i] == '@')
return true;
}
return false;
}
}
版权声明:本文标题:java基础案例6-3模拟用户注册 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dongtai/1726722030a1081902.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论