利用java实现一个客户信息管理系统
更新时间:2021年04月13日 12:09:10 作者:Redamancy•
这篇文章主要给大家介绍了关于利用java实现一个客户信息管理系统的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
用博客记录我自学的点点滴滴
类图:
Customer类:
public class Customer { /** * @name 客户姓名 * @sex 性别 * @age 年龄 * @phone 电话号码 * @email 邮箱 */ private String name; private String sex; private int age; private String phone; private String email; public Customer(){}; public Customer(String name,String sex,int age,String phone,String email){ this.name=name; this.sex=sex; this.age=age; this.phone=phone; this.email=email; } public String getName(){ return this.name; } public void setName(String name){ this.name=name; } public String getSex(){ return this.sex; } public void setSex(String sex){ this.sex=sex; } public String getPhone(){ return phone; } public void setPhone(String phone){ this.phone=phone; } public int getAge(){ return this.age; } public void setAge(int age){ this.age=age; } public String getEmail(){ return this.email; } public void setEmail(String email){ this.email=email; } }
CustomerList 类:
public class CustomerList { private Customer [] customers; private static int total = 0; /** * 构造器初始化对象数组 * @param totalCustmoers 客户的总数 */ public CustomerList(int totalCustmoers){ customers = new Customer[totalCustmoers]; } /** * 增加客户 * @param customer 客户 * @return 返回是否添加成功 */ public boolean addCustomer(Customer customer){ if(customer!=null&&total<customers.length) {customers[total]=customer; total++; return true;} else { return false;} } /** *替换 * @param index 指定的客户的编号 * @param cust 修改的客户 * @return 返回是否修改成功 */ public boolean replaceCustomer(int index,Customer cust){ if(index>=0 && index <total ) { customers[index]=cust;return true; } else { return false; } } /** *删除客户 * @param index 指定的客户的编号 * @return 返回是否删除成功 */ public boolean deleteCustomer(int index){ if(index<customers.length) { for(int i=index;i<total-1;i++) { customers[i]=customers[i+1];/**把数据往前挪动*/ } customers[total-1]=null; total--;/**存储的数据的总数-1*/ return true; } else { return false; } } /** * 展现客户的信息 * @param index * @return 返回客户 */ public Customer getCustomer(int index){ if(index>=0 && index<total) {return customers[index];} else { return null; } } /** * 获取所有的客户 * @return 客户 */ public Customer[] getAllCustomers(){ Customer [] cust = new Customer[total];/**新建一个数组来接收原数组的数据*/ for(int i=0;i<total;i++){ cust[i]=customers[i]; } return cust; } /** * 得到客户的总数 * @return */ public int getTotal(){ return total; } }
CustomerVIew类:
public class CustomerView { private CustomerList customerList = new CustomerList(10); /** * 显示主菜单 */ public void enterMainMenu(){ while(true) {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.println("-----------------------------------------------------"); Scanner input = new Scanner(System.in); int op = input.nextInt(); switch(op) { case 1 :this.addNewCustomer();break; case 2 :this.modifyCustomer();break; case 3 :this.deleteCustomer();break; case 4 :this.listAllCustomers();break; case 5 :System.exit(0);break; default: System.out.println("重新选择功能");break; } } } /** * 增加客户 */ private void addNewCustomer(){ /** * 从键盘处接收客户数据 */ System.out.println("-------------------添加客户-------------------"); Scanner input = new Scanner(System.in); System.out.println("姓名:"); String name = input.next(); System.out.println("性别:"); String sex=input.next(); System.out.println("年龄:"); int age = input.nextInt(); System.out.println("电话号码:"); String phone = input.next(); System.out.println("电子邮箱:"); String email = input.next(); /** * 对客户数据进行封装 */ Customer person = new Customer(name,sex,age,phone,email); Boolean flag=customerList.addCustomer(person); if(flag) { System.out.println("-------------------添加成功-------------------"); } else { System.out.println("-------------------添加失败-------------------"); } } /** * 修改客户信息 */ private void modifyCustomer(){ System.out.println("-------------------修改客户-------------------"); System.out.println("要修改的客户id:"); Scanner input = new Scanner(System.in); int number = input.nextInt(); Customer customer = customerList.getCustomer(number); System.out.println("姓名:"+customer.getName()); String name = CMUtility.readString(5,customer.getName()); System.out.println("性别:"+customer.getSex()); String sex = CMUtility.readString(5,customer.getSex()); System.out.print("年龄(" + customer.getAge() + "):"); int age = CMUtility.readInt(customer.getAge()); System.out.print("电话(" + customer.getPhone() + "):"); String phone = CMUtility.readString(13, customer.getPhone()); System.out.print("邮箱(" + customer.getEmail() + "):"); String email = CMUtility.readString(15, customer.getEmail()); /**得到新的客户数据*/ customer = new Customer(name,sex,age,phone,email); Boolean flag = customerList.replaceCustomer(number,customer); if(flag) { System.out.println("-------------------修改成功-------------------"); } else { System.out.println("-------------------修改失败-------------------"); } } /** * 删除客户 */ private void deleteCustomer(){ System.out.println("-------------------删除客户-------------------"); System.out.println("要删除的客户id:"); Scanner input = new Scanner(System.in); int number = input.nextInt(); while(true){ System.out.println("退出(-1)"); if(number>=0 && number<customerList.getTotal()) { System.out.println("找到指定客户"); } else if(number==-1) { return; } else { System.out.println("输入错误");break; }} System.out.println("是否确认删除该客户?Y/N"); String ch = input.next(); char o = ch.charAt(0); if(o=='Y') { boolean flag = customerList.deleteCustomer(number); if(flag){ System.out.println("-------------------删除成功-------------------"); } else { System.out.println("-------------------删除失败-------------------"); } } else{ return; } } /** * 获取客户列表 */ private void listAllCustomers(){ Customer [] customer=customerList.getAllCustomers(); if(customer.length==0) { System.out.println("没有任何客户数据"); } else{ for(int i=0;i< customer.length;i++) { System.out.println("姓名:"+customer[i].getName()+"\t"+"性别"+customer[i].getSex()+"\t"+"年龄:"+customer[i].getAge()+"\t"+"电话号码:"+customer[i].getPhone()+"\t"+"电子邮箱:"+customer[i].getEmail()+"\t"); } }} public static void main(String[] args) { CustomerView co = new CustomerView(); co.enterMainMenu(); } }
工具类:
public class CMUtility { private static Scanner scanner = new Scanner(System.in); public static String readString(int limit) { return readKeyBoard(limit, false); } public static int readInt(int defaultValue) { int n; for (; ; ) { String str = readKeyBoard(2, true); if (str.equals("")) { return defaultValue; } try { n = Integer.parseInt(str); break; } catch (NumberFormatException e) { System.out.print("数字输入错误,请重新输入:"); } } return n; }
总结
到此这篇关于利用java实现一个客户信息管理系统的文章就介绍到这了,更多相关java客户信息管理系统内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
SpringBoot解决数据库时间和返回时间格式不一致的问题
这篇文章主要介绍了SpringBoot解决数据库时间和返回时间格式不一致的问题,文章通过代码示例和图文结合的方式讲解的非常详细,对大家的学习和工作有一定的帮助,需要的朋友可以参考下2024-03-03Spring Boot项目中定制PropertyEditors方法
在本篇文章里小编给大家分享的是一篇关于Spring Boot定制PropertyEditors的知识点内容,有需要的朋友们可以参考学习下。2019-11-11解决JDK异常处理No appropriate protocol问题
这篇文章主要介绍了解决JDK异常处理No appropriate protocol问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2024-06-06Java8中对于LocalDateTime的序列化和反序列化问题
这篇文章主要介绍了Java8中对于LocalDateTime的序列化和反序列化问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-06-06
最新评论