CustomerView为主模块,负责菜单的显示和处理用户操作

导读:本篇文章讲解 CustomerView为主模块,负责菜单的显示和处理用户操作,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

主要指的是程序和用户的交互问题

首先要引入Customer文件

import com.atguigu.bean.Customer;

创造新对象

private CustomerList customers = new CustomerList(10);

创建空参的构造器

    public CustomerView() {
//		Customer cust = new Customer("张三",'男',30,"010-56253825","abc@email.com");
//		customers.addCustomer(cust);
	}

界面交互,显示最初主界面的方法

用do-while语句主要是为了刚开始就可以显示主界面

    public void enterMainMenu() {
		boolean loopFlag = true;
		do {
			System.out.println("\n-----------------客户信息管理软件-----------------\n");
			System.out.println("                   1 添 加 客 户");
			System.out.println("                   2 修 改 客 户");
			System.out.println("                   3 删 除 客 户");
			System.out.println("                   4 客 户 列 表");
			System.out.println("                   5 退       出\n");
			System.out.print("                   请选择(1-5):");

			char menu = CMUtility.readMenuSelection();
			switch (menu) {
			case '1':
				addNewCustomer();
				break;
			case '2':
				modifyCustomer();
				break;
			case '3':
				deleteCustomer();
				break;
			case '4':
				listAllCustomers();
				break;
			case '5':
//				System.out.println("退出");
				System.out.println("确认是否退出(Y/N):");
				char isExit = CMUtility.readConfirmSelection();
				if (isExit == 'Y') {
					loopFlag = false;
				}
			}
		} while (loopFlag);
	}

添加用户的操作方法

    private void addNewCustomer() {
//		System.out.println("添加客户的操作");
		System.out.println("---------------------添加客户---------------------");
		System.out.print("姓名:");
		String name = CMUtility.readString(4);
		System.out.print("性别:");
		char gender = CMUtility.readChar();
		System.out.print("年龄:");
		int age = CMUtility.readInt();
		System.out.print("电话:");
		String phone = CMUtility.readString(15);
		System.out.print("邮箱:");
		String email = CMUtility.readString(15);
		
		//将上述数据封装到对象中
		Customer cust = new Customer(name, gender, age, phone, email);
		boolean flag = customers.addCustomer(cust);
		if (flag) {
			System.out
					.println("---------------------添加完成---------------------");
		} else {
			System.out.println("----------------记录已满,无法添加-----------------");
		}
	}

修改客户的操作方法

    private void modifyCustomer() {
//		System.out.println("修改客户的操作");
		System.out.println("---------------------修改客户---------------------");

		int index = 0;
		Customer cust = null;
		for (;;) {
			System.out.print("请选择待修改客户编号(-1退出):");//正常输入的编号是从1开始,才能对第一个对象数组进行修改
			index = CMUtility.readInt();
			if (index == -1) {
				return;
			}

			cust = customers.getCustomer(index - 1);
			if (cust == null) {
				System.out.println("无法找到指定客户!");
			} else//找到了相应的客户
				break;
		}
		//不想改动的话,直接换行就行
		System.out.print("姓名(" + cust.getName() + "):");
		String name = CMUtility.readString(4, cust.getName());

		System.out.print("性别(" + cust.getGender() + "):");
		char gender = CMUtility.readChar(cust.getGender());

		System.out.print("年龄(" + cust.getAge() + "):");
		int age = CMUtility.readInt(cust.getAge());

		System.out.print("电话(" + cust.getPhone() + "):");
		String phone = CMUtility.readString(15, cust.getPhone());

		System.out.print("邮箱(" + cust.getEmail() + "):");
		String email = CMUtility.readString(15, cust.getEmail());

		cust = new Customer(name, gender, age, phone, email);

		boolean flag = customers.replaceCustomer(index - 1, cust);
		if (flag) {
			System.out
					.println("---------------------修改完成---------------------");
		} else {
			System.out.println("----------无法找到指定客户,修改失败--------------");
		}
	}

删除用户的操作方法

    private void deleteCustomer() {
//		System.out.println("删除客户的操作");
		System.out.println("---------------------删除客户---------------------");

		int index = 0;
		Customer cust = null;
		for (;;) {
			System.out.print("请选择待删除客户编号(-1退出):");
			index = CMUtility.readInt();
			if (index == -1) {
				return;
			}

			cust = customers.getCustomer(index - 1);
			if (cust == null) {
				System.out.println("无法找到指定客户!");
			} else
				break;
		}

		System.out.print("确认是否删除(Y/N):");
		char yn = CMUtility.readConfirmSelection();
		if (yn == 'N')
			return;

		boolean flag = customers.deleteCustomer(index - 1);
		if (flag) {
			System.out
					.println("---------------------删除完成---------------------");
		} else {
			System.out.println("----------无法找到指定客户,删除失败--------------");
		}
	}

显示客户列表的操作

    private void listAllCustomers() {
//		System.out.println("显示客户列表的操作");
		System.out.println("---------------------------客户列表---------------------------");
		Customer[] custs = customers.getAllCustomers();
		if (custs.length == 0) {
			System.out.println("没有客户记录!");
		} else {
			System.out.println("编号\t姓名\t性别\t年龄\t\t电话\t\t邮箱");
			for (int i = 0; i < custs.length; i++) {
				System.out.println(i + 1 + "\t" + custs[i].getName() + "\t" + custs[i].getGender() + "\t" + custs[i].getAge() + "\t\t" + custs[i].getPhone() + "\t" + custs[i].getEmail());
			}
		}

		System.out.println("-------------------------客户列表完成-------------------------");
	}

	public static void main(String[] args) {
		CustomerView view = new CustomerView();// 创建新对象
		view.enterMainMenu();
	}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/83331.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!