尚硅谷_宋红康_Project2.pptx
package com.atguigu.project;/*该类封装客户的以下信息:String name :客户姓名char gender :性别int age :年龄String phone:电话号码String email :电子邮箱*/public class Customer {private String name;private char gender;private int age;private String phone;private String email;public Customer() {}public Customer(String name, char gender, int age, String phone, String email) {this.name = name;this.gender = gender;this.age = age;this.phone = phone;this.email = email;}public String getName() {return name;}public void setName(String name) {this.name = name;}public char getGender() {return gender;}public void setGender(char gender) {this.gender = gender;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}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;}}
package com.atguigu.project;public class CustomerList {private Customer[] customers;private int total = 0;public CustomerList() {}/*** 用途:构造器,用来初始化customers数组* 参数:totalCustomer:指定customers数组的最大空间** @param totalCustomer 指定customers数组的最大空间*/public CustomerList(int totalCustomer) {customers = new Customer[totalCustomer];}/*** 用途:将参数customer添加到数组中最后一个客户对象记录之后* 参数:customer指定要添加的客户对象* 返回:添加成功返回true;false表示数组已满,无法添加** @param customer 指定要添加的客户对象* @return 添加成功返回true;false表示数组已满,无法添加*/public boolean addCustomer(Customer customer) {if (total < customers.length) {customers[total++] = customer;return true;} else {return false;}}/*** 用途:用参数customer替换数组中由index指定的对象* 参数:customer指定替换的新客户对象* index指定所替换对象在数组中的位置,从0开始* 返回:替换成功返回true;false表示索引无效,无法替换** @param index 指定所替换对象在数组中的位置,从0开始* @param cust customer指定替换的新客户对象* @return 替换成功返回true;false表示索引无效,无法替换*/public boolean replaceCustomer(int index, Customer cust) {if (index >= 0 && index < customers.length) {customers[index] = cust;return true;} else {return false;}}/*** 用途:从数组中删除参数index指定索引位置的客户对象记录* 参数: index指定所删除对象在数组中的索引位置,从0开始* 返回:删除成功返回true;false表示索引无效,无法删除** @param index index指定所删除对象在数组中的索引位置,从0开始* @return 删除成功返回true;false表示索引无效,无法删除*/public boolean deleteCustomer(int index) {if (index >= 0 && index < customers.length) {customers[index] = null;return true;} else {return false;}}/*** 用途:返回数组中记录的所有客户对象* 返回: Customer[] 数组中包含了当前所有客户对象,该数组长度与对象个数相同。** @return Customer[] 数组中包含了当前所有客户对象,该数组长度与对象个数相同。*/public Customer[] getAllCustomers() {return customers;}/*** 用途:返回参数index指定索引位置的客户对象记录* 参数: index指定所要获取的客户在数组中的索引位置,从0开始* 返回:封装了客户信息的Customer对象** @param index 指定所要获取的客户在数组中的索引位置,从0开始* @return 封装了客户信息的Customer对象*/public Customer getCustomer(int index) {if (index >= 0 && index < customers.length) {return customers[index];} else {System.out.println("索引有问题,反回第一个客户信息");return customers[0];}}public int getTotal() {return this.total;}}
package com.atguigu.project;import java.util.Scanner;public class CustomerView {CustomerList customerList = new CustomerList(10);Scanner sc = new Scanner(System.in);/*** 用途:显示主菜单,响应用户输入,根据用户操作分别调用其他相应的成员方法(如addNewCustomer),以完成客户信息处理。*/public void enterMainMenu() {System.out.println("-----------------客户信息管理软件-----------------");System.out.println(" 1 添 加 客 户");System.out.println(" 2 修 改 客 户");System.out.println(" 3 删 除 客 户");System.out.println(" 4 客 户 列 表");System.out.println(" 5 退 出");System.out.print(" 请选择(1-5):");}/****/private void addNewCustomer() {System.out.println("---------------------添加客户---------------------");Customer customer = new Customer();System.out.print("姓名:");customer.setName(sc.next());System.out.print("性别:");customer.setGender(sc.next().charAt(0));System.out.print("年龄:");customer.setAge(sc.nextInt());System.out.print("电话:");customer.setPhone(sc.next());System.out.print("邮箱:");customer.setEmail(sc.next());customerList.addCustomer(customer);System.out.println("---------------------添加完成---------------------");}private void modifyCustomer() {System.out.println("---------------------修改客户---------------------");System.out.print("请选择待修改客户编号(-1退出):");int choice = sc.nextInt()-1;//返回目标类customerList.getCustomer(choice);Customer customer = new Customer();System.out.print("姓名(" + customerList.getCustomer(choice).getName() + "):");customer.setName(sc.next());System.out.print("性别(" + customerList.getCustomer(choice).getGender() + "):");customer.setGender(sc.next().charAt(0));System.out.print("年龄(" + customerList.getCustomer(choice).getAge() + "):");customer.setAge(sc.nextInt());System.out.print("电话(" + customerList.getCustomer(choice).getPhone() + "):");customer.setPhone(sc.next());System.out.print("邮箱(" + customerList.getCustomer(choice).getEmail() + "):");customer.setEmail(sc.next());customerList.replaceCustomer(choice, customer);System.out.println("---------------------添加完成---------------------");}private void deleteCustomer() {System.out.println("---------------------删除客户---------------------");System.out.print("请选择待删除客户编号(-1退出):");int choice = sc.nextInt();System.out.println("确认是否删除(Y/N):");String flag = sc.next();if (flag.toLowerCase().equals("y")) {customerList.deleteCustomer(choice);} else {System.out.println("删除失败!!!");}System.out.println("---------------------删除完成---------------------");}private void listAllCustomers() {System.out.println("---------------------------客户列表---------------------------");System.out.println("编号 姓名 性别 年龄 电话 邮箱");//得到客户数组customerList.getAllCustomers();for (int i = 0; i < customerList.getTotal(); i++) {if (customerList.getCustomer(i) != null) {System.out.println(i + 1 + "\t\t" + customerList.getCustomer(i).getName() + "\t\t" + customerList.getCustomer(i).getGender()+"\t\t"+customerList.getCustomer(i).getAge()+ "\t\t" + customerList.getCustomer(i).getPhone() + "\t\t\t\t" + customerList.getCustomer(i).getEmail());} else {System.out.println(i + 1 + "\t" + "什么都没有");}}System.out.println("-------------------------客户列表完成-------------------------\n");}public static void main(String[] args) {Scanner sc = new Scanner(System.in);CustomerView cv = new CustomerView();label:while (true){cv.enterMainMenu();int yourChoice=sc.nextInt();switch (yourChoice){case 1:cv.addNewCustomer();break;case 2:cv.modifyCustomer();break;case 3:cv.deleteCustomer();break;case 4:cv.listAllCustomers();break;case 5:break label;default:System.out.println("输入有问题,请重新输入");break;}}}}
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论