⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 operate.java

📁 电话本小系统
💻 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 + -