📄 operate.java
字号:
package com.telephonebook;
import java.util.Vector;
import java.util.Collections;
public class Operate {
/**
* 业务处理类
*/
/**定义一个用户容器,用于容纳用户对象*/
private static Vector<Person> v=new Vector<Person>();
static {
v.add(new Person(1,"zhangsan",23,"M","12345678","beijing"));
v.add(new Person(2,"zhangran",20,"F","12356389","hangzhou"));
v.add(new Person(3,"lili",23,"f","12345634","beijing"));
v.add(new Person(4,"zhaohe",23,"m","12315689","jilin"));
v.add(new Person(5,"lilin",29,"m","12367689","qinghai"));
v.add(new Person(6,"wangfei",20,"f","12345612","hubei"));
v.add(new Person(7,"wanghai",21,"m","12345559","hubei"));
}
/**用户添加信息业务逻辑控制*/
public boolean addLogic(){
System.out.println("请选择功能项:");
/**显示添加菜单*/
new Menu().addMenu();
/**检查用户输入的菜单选项是否符合要求*/
int in=new TelNoteRegex().menuRegex(1, 3);
switch(in){
/**添加新记录*/
case 1:
addOperation();
return true;
/**显示全部记录*/
case 2:
showAll();
return true;
/**返回上一级*/
case 3:
break;
}
return false;
}
/**用户查询信息业务逻辑控制*/
public boolean searchLogic(){
/**显示查找菜单*/
if(v.size()==0){
System.out.println("电话簿已空,不能继续为您查找");
return false;
}
new Menu().searchMenu();
/**对用户的输入进行检查*/
int in=new TelNoteRegex().menuRegex(1, 7);
switch(in){
/**按姓名查找*/
case 1:
searchByName();
return true;
/**按年龄查找*/
case 2:
searchByAge();
return true;
/**按性别查找*/
case 3:
searchBySex();
return true;
/**按电话号码查找*/
case 4:
searchByTelNum();
return true;
/**按地址进行查找*/
case 5:
searchByAdd();
return true;
//显示全部记录
case 6:
showAll();
return true;
//返回上一级
case 7:
break;
}
return false;
}
/**修改信息业务逻辑控制*/
public boolean modifyLogicLogic(){
if(v.size()==0){
System.out.println("电话簿已空,不能继续为您修改");
return false;
}
/**显示修改菜单*/
new Menu().modifyMenu();
/**对用户的输入进行检查*/
int in=new TelNoteRegex().menuRegex(1, 3);
switch(in){
/**显示全部记录*/
case 1:
showAll();
return true;
/**修改指定记录信息*/
case 2:
modify();
return true;
/**返回上一级*/
case 3:
break;
}
return false;
}
/**删除信息业务逻辑控制*/
public boolean deleteLogic(){
/**显示删除菜单*/
new Menu().deleteMenu();
if(v.size()==0){
System.out.println("电话簿已空,无法再继续进行删除");
return false;
}
/**对用户的输入进行检查*/
int in=new TelNoteRegex().menuRegex(1, 4);
switch(in){
/**显示全部记录*/
case 1:
showAll();
return true;
/**删除指定记录*/
case 2:
delete();
return true;
/**删除全部记录*/
case 3:
deleteAll();
return true;
/**返回上一级*/
case 4:
break;
}
return false;
}
/**排序信息业务逻辑控制*/
public boolean orderLogic(){
if(v.size()==0){
System.out.println("电话簿已空,不能继续为您排序");
return false;
}
/**显示排序菜单*/
new Menu().orderMenu();
/**对用户的输入进行检查*/
int in=new TelNoteRegex().menuRegex(1, 5);
switch(in){
/**按姓名进行排序*/
case 1:
orderName();
return true;
/**按年龄进行排序*/
case 2:
orderAge();
return true;
/**按性别进行排序*/
case 3:
orderSex();
return true;
/**显示全部记录*/
case 4:
showAll();
return true;
/**返回上一级*/
case 5:
break;
}
return false;
}
/**添加新用户信息*/
public void addOperation (){
/**向集合中添加一个元素*/
v.add(new Person());
/**对刚添加元素的ID进行赋值*/
v.get(v.size()-1).setId(v.size());
/**对用户输入的姓名进行检查*/
String name=new TelNoteRegex().nameRegex();
/**把用户输入的姓名赋给刚添加的对象*/
v.get(v.size()-1).setName(name);
/**对用户输入的年龄进行检查*/
int age=new TelNoteRegex().ageRegex();
/**把用户输入的年龄赋给刚添加的对象*/
v.get(v.size()-1).setAge(age);
/**对用户输入的性别进行检查*/
String sex=new TelNoteRegex().sexRegex();
/**把用户输入的性别赋给刚添加的对象*/
v.get(v.size()-1).setSex(sex);
/**对用户输入的电话号码进行检查*/
String tel=new TelNoteRegex().telNumRegex();
/**把用户输入的电话号码赋给刚添加的对象*/
v.get(v.size()-1).setTelNum(tel);
/**对用户输入的地址进行检查*/
String address=new TelNoteRegex().addressRegex();
/**把用户输入的地址赋给刚添加的对象*/
v.get(v.size()-1).setAddress(address);
/**把刚添加的对象显示出来*/
System.out.println(v.get(v.size()-1));
}
/**查询全部用户信息*/
public void showAll(){
/**如果电话簿已经为空,提示用户。*/
if(v.size()==0){
System.out.println("电话簿已空,请进行其他操作");
return;
}
System.out.println("全部电话簿记录为:");
for(int i=0;i<v.size();i++){
System.out.println(v.get(i));
}
}
/**按姓名查询用户信息*/
public void searchByName(){
boolean b=false;
int i=0;
String name=new TelNoteRegex().nameRegex();
for( i=0;i<v.size();i++){
if(v.get(i).getName().compareToIgnoreCase(name)==0){
b=true;
System.out.println(v.get(i));
}
}
/**如果用户输入的姓名不存在,提示用户*/
if(!b){
System.out.println("您查找的姓名不存在!请重新输入!");
searchByName();
}
}
/**按年龄查询用户信息*/
public void searchByAge(){
boolean b=false;
int i=0;
int age=new TelNoteRegex().ageRegex();
for( i=0;i<v.size();i++){
if(v.get(i).getAge()==age){
b=true;
System.out.println(v.get(i+1));
}
}
/**如果用户输入的年龄不存在,提示用户。*/
if(!b){
System.out.println("您查找的年龄不存在!请重新输入!");
searchByAge();
}
}
/**按性别查询用户信息*/
public void searchBySex(){
boolean b=false;
int i=0;
String sex=new TelNoteRegex().sexRegex();
for( i=0;i<v.size();i++){
if(v.get(i).getSex().compareToIgnoreCase(sex)==0){
b=true;
System.out.println(v.get(i));
}
}
/**如果用户输入的性别不存在,提示用户*/
if(!b){
System.out.println("您查找的性别不存在!请重新输入!");
searchBySex();
}
}
/**按电话号码查询用户信息*/
public void searchByTelNum(){
boolean b=false;
int i=0;
String tel=new TelNoteRegex().telNumRegex();
for( i=0;i<v.size();i++){
if(v.get(i).getTelNum().equals(tel)){
b=true;
System.out.println(v.get(i));
}
}
/**如果用户输入的电话号码不存在,提示用户*/
if(!b){
System.out.println("您查找的电话号码不存在!请重新输入!");
searchByTelNum();
}
}
/**按地址查询用户信息*/
public void searchByAdd(){
boolean b=false;
int i=0;
String address=new TelNoteRegex().addressRegex();
for( i=0;i<v.size();i++){
if(v.get(i).getAddress().compareToIgnoreCase(address)==0){
b=true;
System.out.println(v.get(i));
}
}
/**如果用户输入的地址不存在,提示用户*/
if(!b){
System.out.println("您查找的地址不存在!请重新输入!");
searchByAdd();
}
}
/**修改指定记录信息*/
static int id=0;
public void modify(){
System.out.println("请输入记录号:");
/**对用户输入的ID号进行检查*/
id=new TelNoteRegex().menuRegex(1, v.size()+1);
System.out.println(v.get(id-1));/**显示要修改的记录信息*/
new Menu().subModifyMenu();
int in=new TelNoteRegex().menuRegex(1, 6);
switch(in){
/**按姓名进行修改*/
case 1:
modifyName();
break;
/**按年龄进行修改*/
case 2:
modifyAge();
break;
/**按性别进行修改*/
case 3:
modifySex();
break;
/**按电话号码进行修改*/
case 4:
modifyTelNum();
break;
/**按地址进行修改*/
case 5:
modifyAddress();
break;
/**返回上一级*/
case 6:
break;
}
}
/**按姓名修改*/
public void modifyName(){
/**对用户输入的姓名进行检查*/
String name=new TelNoteRegex().nameRegex();
/**对已输入ID的姓名进行修改*/
v.get(id).setName(name);
System.out.println("修改后的记录为:");
/**打印修改的记录*/
System.out.println(v.get(id));
}
/**按年龄修改*/
public void modifyAge(){
/**对用户输入的年龄进行检查*/
int age=new TelNoteRegex().ageRegex();
/**修改年龄*/
v.get(id).setAge(age);
System.out.println("修改后的记录为:");
/**显示修改的记录*/
System.out.println(v.get(id));
}
/**按性别修改*/
public void modifySex(){
/**对用户输入的性别进行检查*/
String sex=new TelNoteRegex().sexRegex();
/**修改性别*/
v.get(id).setSex(sex);
System.out.println("修改后的记录为:");
/**显示记录*/
System.out.println(v.get(id+1));
}
/**按号码修改*/
public void modifyTelNum(){
/**检查用户输入的电话号码*/
String tel=new TelNoteRegex().telNumRegex();
/**修改电话号码*/
v.get(id).setTelNum(tel);
System.out.println("修改后的记录为:");
/**显示记录*/
System.out.println(v.get(id+1));
}
/**按地址修改*/
public void modifyAddress(){
/**检查用户输入的地址*/
String address=new TelNoteRegex().addressRegex();
/**修改地址*/
v.get(id).setAddress(address);
System.out.println("修改后的记录为:");
/**显示记录*/
System.out.println(v.get(id+1));
}
/**删除指定用户信息*/
public void delete(){
int n=new TelNoteRegex().menuRegex(1, 7);/**由用户输入要删除的ID号,并进行检查*/
System.out.println(v.get(n-1));/**显示要删除的记录*/
/**询问用户是否要删除*/
System.out.println("确定删除吗?1.确定 2.取消");
int in=new TelNoteRegex().menuRegex(1, 2);
if(in==1){
v.remove(n-1);
for(int j=n-1;j<v.size();j++){
v.get(j).setId(v.get(j).getId()-1);
}
System.out.println("删除成功!请继续操作!");
}
}
/**删除全部用户信息*/
public void deleteAll(){
/**询问用户是否要删除。*/
System.out.println("确定全部删除吗?1.确定 2.取消");
int in=new TelNoteRegex().menuRegex(1, 2);
if(in==1){
for(int i=0;i<v.size();i++){
v.removeAllElements();
}
System.out.println("电话簿已清空,请继续操作!");
}
}
/**按用户姓名排序信息*/
public void orderName(){
System.out.println("按姓名排序的结果为:");
Collections.sort(v,new Compare());
for(Person p:v){
System.out.println(p);
}
}
/**按用户年龄排序信息*/
public void orderAge(){
System.out.println("按年龄排序的结果为:");
Collections.sort(v,new IntegerCompare());
for(Person p:v){
System.out.println(p);
}
}
/**按用户性别排序信息*/
public void orderSex(){
System.out.println("按性别排序的结果为:");
Collections.sort(v,new SexCompare());
for(Person p:v){
System.out.println(p);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -