Java设计一个用户注册的程序
2017-10-25 20:03
405 查看
设计一个用户注册的程序,使用Scanner在控制台输入,字段有 用户名、密码、手机号、邮箱
要求:用户名不超过6位不能以数字开头,密码必须包含大写小写字母和数字6-8位,手机号为11位数字,邮箱必须符合邮箱格式。
使用面向对象的编程思想完成用户注册,可以持续操作,并把注册成功的用户保存。
package lianxi10;
public class User {
}
package lianxi10;
import java.util.ArrayList;
import java.util.Scanner;
public class Reg {
}
package lianxi10;
import java.util.ArrayList;
public class Test {
// list.add(a);
// System.out.println(list.size());
// System.out.println(list.get(0));
// System.out.println(list.get(1));
}
要求:用户名不超过6位不能以数字开头,密码必须包含大写小写字母和数字6-8位,手机号为11位数字,邮箱必须符合邮箱格式。
使用面向对象的编程思想完成用户注册,可以持续操作,并把注册成功的用户保存。
package lianxi10;
public class User {
private String name; private String pwd; private String phone; private String email; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPwd() { return pwd; } public void setPwd(String pwd) { this.pwd = pwd; } public String getPhone() { return phone; } public void setPhone(String phone) { this.phone = phone; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public User(String name, String pwd, String phone, String email) { super(); this.name = name; this.pwd = pwd; this.phone = phone; this.email = email; } public User() { super(); // TODO Auto-generated constructor stub } @Override public String toString() { return "姓名:" + name + ", 密码:" + pwd + ", 手机号:" + phone + ", 邮箱:" + email; }
}
package lianxi10;
import java.util.ArrayList;
import java.util.Scanner;
public class Reg {
static ArrayList<User> list = new ArrayList<User>(); public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("=============用户注册界面============="); a:while (true) { System.out.println("请选择:1.用户注册;2.查看用户;3.修改用户;4.删除用户;0.退出"); int i = sc.nextInt(); switch (i) { case 1: //注册信息 User u = yanzheng(sc); list.add(u); break; case 2: if(list.size()==0){ System.out.println("当前没有用户,请先注册!"); }else{ for (User user : list) { System.out.println(user); } } break; case 3: setUser(sc); break; case 4: delUser(sc); break; case 0: break a; default: } } System.out.println("================退出系统,再见!==============="); } /** * 删除用户 */ public static void delUser(Scanner sc){ System.out.println("请输入要删除的用户名:"); String name = sc.next(); //声明要修改的用户对象 User u = null; //在集合中查询同名的对象 for (User user : list) { if(user.getName().equals(name)){ u = user; } } if(u==null){ System.out.println("没有查询到该用户!"); return; } list.remove(u); System.out.println("删除成功"); } /** * 修改用户 * @param sc */ public static void setUser(Scanner sc){ System.out.println("请输入要修改的用户名:"); String name = sc.next(); //声明要修改的用户对象 User u = null; //在集合中查询同名的对象 for (User user : list) { if(user.getName().equals(name)){ u = user; } } if(u==null){ System.out.println("没有查询到该用户!"); return; } User user = yanzheng(sc); list.set(list.indexOf(u), user); System.out.println("修改成功"); } /** * 注册 * @param sc * @return */ private static User yanzheng(Scanner sc) { User u = new User(); //判断姓名 while(true){ System.out.println("请输入用户名:(不能以数字开头,不超过6位)"); String name = sc.next(); if(name.matches("^[^0-9]([0-9a-zA-Z]{0,5})$")){ System.out.println("用户名通过"); u.setName(name); break; }else{ System.out.println("用户名不正确"); } } //判断密码,必须包含大写、小写、数字 while(true){ System.out.println("请输入密码:,必须包含大写、小写、数字6-8位"); String pwd = sc.next(); if(pwd.matches("^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])([a-zA-Z0-9]{6,8})$")){ System.out.println("密码通过"); u.setPwd(pwd); break; }else{ System.out.println("密码不通过"); } } //手机号 while(true){ System.out.println("请输入手机号:11位数字"); String phone = sc.next(); if(phone.matches("^([1])([3]|[5]|[7]|[8])([0-9]{9})$")){ System.out.println("手机号通过"); u.setPhone(phone); break; }else{ System.out.println("手机号不通过"); } } //邮箱 while(true){ System.out.println("请输入邮箱:"); String email = sc.next(); if(email.matches("^[0-9a-zA-Z_]+[@][a-zA-Z0-9]+[.](([c][o][m])|([c] ))$")){ System.out.println("邮箱通过"); u.setEmail(email); break; }else{ System.out.println("邮箱不通过"); } } return u; }
}
package lianxi10;
import java.util.ArrayList;
public class Test {
public static void main(String[] args) { User u = new User("tom","123","1306666","abc@qq.com"); User u2 = new User("jack","123","1306666","abc@qq.com"); Animal a = new Animal("狗"); //使用泛型,是在编译期对代码的限制 ArrayList<User> list = new ArrayList<User>(); //添加 list.add(u); list.add(u2);
// list.add(a);
//取值,单个查询
// System.out.println(list.size());
// System.out.println(list.get(0));
// System.out.println(list.get(1));
System.out.println("修改前:"); //遍历集合,查询 for (User user : list) { System.out.println(user); } System.out.println("======================"); //修改 list.set(1, new User("Lily","123","1306666","abc@qq.com")); System.out.println("修改后:"); //遍历集合,查询 for (User user : list) { System.out.println(user); } //删除 list.remove(1); System.out.println("删除后:"+list.size()); }
}
相关文章推荐
- 利用Java Swing技术设计一个鼠标点击速度比赛游戏程序。程序显示一个按钮和一个文本框,用户点击按钮,文本框显示鼠标点击次数。两个人同时运行本程序,即可进行比赛
- 利用Java Swing技术设计一个鼠标点击速度比赛游戏程序。程序显示一个按钮和一个文本框,用户点击按钮,文本框显示鼠标点击次数。
- 设计一个用户注册程序
- 安装程序无法创建一个DCOM用户帐号来注册
- 有懂discuz的吗?我需要在我自己的系统注册一个账号的时候,也把当前注册的账号放在discuz的用户里面。应该怎么做呀。需要discuz和java的接口吗?需要更改哪些东西。
- JR 精品文章 - 一个Java画图板程序的设计
- c# 一个托盘程序的详细设计过程(用户登录)
- JIntellitype一个在Java程序中注册热键的库
- JAVA--第九周实验--编写一个模拟用户帐户的程序(内测版)
- 5.编写一个程序输出从2开始的素数,素数个数由用户指定,要求10个一行。java
- 用java写一个用户只能从键盘输入整数,程序输出这些整数的乘积
- 编写一个封装用户信息的JavaBean对象,通过操作JavaBean的动作标识,输出用户的注册信息。
- Rhino 是一个完全使用Java语言编写的开源JavaScript实现。Rhino通常用于在Java程序中,为最终用户提供脚本化能力。它被作为J2SE 6上的默认Java脚本化引擎。
- 求助:安装程序无法创建一个DCOM用户帐号来注册.....\valec.exe
- 4.设计一个Email邮箱注册应用程序。要求:用户输入完成单击“立即注册”按,判断“密码”和“确认密码”文本框内容是否一致,如果一致在立即注册按钮上方显示用户输入的邮件地址,运行结果如图所示。
- 用java编写一个程序,来验证用户输入的数是不是2的阶次方
- 2013-03-07:编写一个JAVA程序,用户用键盘只能输入整数,程序输出这些整数的乘积
- 用Java设计一个程序,找到一个字符串中对称字符串的个数【面试题】
- Java web----用户注册登录程序
- 安装程序无法创建一个DCOM用户帐号来注册 D:/....的解决方法