联系人管理系统
1.添加联系人,对联系人进行增删改产;
运用到的知识点
1.正则表达式;
2.封装,装箱,拆箱,多态的应用;
manager页面
public ArrayList list = new ArrayList();
//添加方法
public boolean addPerson(Person person) {
boolean flang = true;
if(!person.getNumber().matches(“1\d{10}”)) {
System.out.println(“请输入正确的手机号”);
return false;
}
if(!person.getEmail().matches("^([a-z0-9A-Z]+[-|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$")) {
System.out.println("请输入正确的邮箱");
flang = false;
}
list.add(person);
return flang;
}
//根据姓名和电话号码查询相关记录信息
public List<Person> findByNameAndPhone(int type,String key) {
//创建一个临时存放空间
List<Person> temp = new ArrayList<Person>();
if(type == 1) {
for(Person per:list) {
if(per.getNaem().equals(key)) {
temp.add(per);
}
}
}else if(type == 2) {
for(Person per:list) {
if(per.getNumber().equals(key)) {
temp.add(per);
}
}
}else {
temp = list;
}
return temp;
}
//根据用户编号删除用户信息
public boolean delPerson(int num) {
Person pers = null;
for(Person per:list) {
if(per.getNo() == num) {
pers = per;
break;
}
}
if(Objects.isNull(pers)) {
System.out.println("查无此人!!");
return false;
}
return list.remove(pers);
}
Client
1.添加
public void add() {
System.out.println(“请按以下方式输入联系人的信息;”);
String info = sc.next();
//^\d{6}/\.+/$
if(!info.matches("^\d{6}/\.+/$")) {
System.out.println(“你输入 的格式不正确”);
add();
}else {
String infos [] = info.split("/");
Person per =new Person(Integer.parseInt(infos [0]), infos[1], infos[2], infos[3], infos[4]);
boolean flang = pm.addPerson(per);
if(flang) {
System.out.println("数据添加成功!!!");
meun();
}else{
add();
}
}
}
按条件查找联系人
public void query(int type) {
System.out.println("请输入你要查询条件:");
String key = sc.next();
List<Person> list = pm.findByNameAndPhone(type, key);
if(list.isEmpty()) {
System.out.println("没有找到相关信息记录");
}else {
for(Person per:list) {
System.out.println(per);
}
}
meun();
}
删除联系人
public void delPersonByld() {
System.out.println(“请输入要删除的用户编号:”);
String num = sc.next();
if(!num.matches("\d")) {
System.out.println(“请输入正确编号”);
delPersonByld();
}
int id = Integer.parseInt(num);
boolean flang = pm.delPerson(id);
if(flang) {
System.out.println(“删除成功”);
}
meun();
}
总结
1.基于面向对象对多态的运用,在实践的过程中要注意细节,正则表达式不能出一点错,不然最后录入联系人的时候会一直录入不进去;
2.要善于创建对象,将Java面向对象的理念贯彻其中。