需求 :

1.  必须提供用户的菜单(展示本系统的所有功能,用户选择)
2. 类描述客户的数据,属性 : 姓名,年龄,邮件
3. 客户数据,存储在集合,定义集合,存储客户对象
4. 初始化数据,程序启动,集合中存储一些数据
5. 添加客户数据 (录入信息), 重名的不能添加
6. 修改客户数据,判断是否存在用户, 检测姓名
7. 删除客户数据,判断是否存在用户, 检测姓名
8. 查询数据 : 集合遍历

写三个类

一个写主函数

一个存变量

一个写方法

package Excise;public class Customer {private String name;//姓名private int age;//年龄private String email;//客户的邮件地址public Customer(){}public Customer(String name, int age, String email) {this.name = name;this.age = age;this.email = email;}public void setName(String name) {this.name = name;}public void setAge(int age) {this.age = age;}public String getName() {return name;}public int getAge() {return age;}public String getEmail() {return email;}public void setEmail(String email) {this.email = email;}@Overridepublic String toString() {return "Customer{" +"name='" + name + '\'' +", age=" + age +", email='" + email + '\'' +'}';}
}

方法类

package manager;import Excise.Customer;import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;/*
客户关系管理系统*/
public class CustomerManager {//定义集合private List<Customer> customerList = new ArrayList<Customer>();private Scanner scanner = new Scanner(System.in);//集合数据的初始化private void init(){customerList.add(new Customer("张三",20,"zs@qq.com"));customerList.add(new Customer("李四",22,"ls@sina.com"));}public CustomerManager(){init();}/*提供用户的功能菜单*/public void menu() {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("请输入编号,选择功能");String number = scanner.nextLine();switch (number){case "1"://调用添加客户信息的方法addCustomer();break;case "2"://调用修改客户信息的方法break;case "3"://调用删除客户信息的方法deleteCustomer();break;case "4"://调用查询客户信息的方法selectCustomer();break;case "5":System.exit(0);default:System.out.println("输入错误!!!");break;}}}
/*
删除用户数据*/private void deleteCustomer() {System.out.println("选择的是删除用户功能");System.out.println("请输入要删除的姓名");String name = scanner.nextLine();//定义保存,保存可以删除的索引int index = -1;//遍历集合,查询集合中是否有这个名字for (int x = 0;x< customerList.size(); x++){Customer customer = customerList.get(x);if (customer.getName().equals(name)){//集合中有这个名字index = x;//记录名字出现的索引break;}}//判断索引if (index == -1){System.out.println("对不起,没有这个用户");return;}customerList.remove(index);System.out.println("删除成功");}/*查询客户数据遍历集合*/private void selectCustomer() {//集合中没有元素,结束方法if(customerList.isEmpty()){System.out.println("对不起,没有数据");return;}for (Customer customer : customerList){System.out.println(customer);}}/*添加客户的方法*/private void addCustomer() {System.out.println("选择的是添加客户数据");System.out.println("请输入姓名:");String name = scanner.nextLine();//遍历集合,取出每个客户的对象,看看是否重名for (Customer customer: customerList) {//用户输入姓名,和集合中存储的客户姓名,如果相同if (customer.getName().equals(name)){//禁止添加System.out.println("姓名重复,重新选择功能");return;//结束方法}}System.out.println("请输入年龄: ");int age = Integer.parseInt(scanner.nextLine());System.out.println("输入邮箱地址");String email = scanner.nextLine();//用户的数据,存储到customer对象,存储集合customerList.add(new Customer(name,age,email));System.out.println("数据添加成功");}}

主函数

package manager;public class Test1111 {public static void main(String[] args) {//启动程序,调用菜单方法new CustomerManager().menu();}
}

运行效果:

Java小项目——客户的关系管理系统相关推荐

  1. Java小项目—客户信息管理软件(二)

    CustomerView类的设计 CustomerView为主模块,负责菜单的显示和处理用户操作. 本类封装以下信息: 创建最大包含10个客户对象的CustomerList对象,供以下各成员方法使用. ...

  2. JAVA小项目之超市会员管理系统

    思路分析 1.会员类Member     (1)姓名        name:String     (2)卡号        cardId:int     (3)密码        password: ...

  3. java小项目影院系统

    java小项目,影院管理系统 http://download.csdn.net/detail/github_32658299/9632276 下面是两个关键的类 1.这是电影院测试类,用来读取用户输入 ...

  4. JAVA毕设项目猎头公司业务管理系统的设计与实现(java+VUE+Mybatis+Maven+Mysql)

    JAVA毕设项目猎头公司业务管理系统的设计与实现(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuil ...

  5. Java毕设项目超市会员积分管理系统计算机(附源码+系统+数据库+LW)

    Java毕设项目超市会员积分管理系统计算机(附源码+系统+数据库+LW) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ ...

  6. java小项目之:植物大战僵尸,这个僵尸不太冷!内附素材源码

    Java小项目之:植物大战僵尸! <植物大战僵尸>是由PopCap Games开发的一款益智策略类单机游戏,于2009年5月5日发售,这款游戏可谓是无人不知无人不晓. 在我身边,上到40岁 ...

  7. Java毕设项目阿博图书馆管理系统(java+VUE+Mybatis+Maven+Mysql)

    Java毕设项目阿博图书馆管理系统(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(We ...

  8. java小项目家庭记账程序

    文章目录 java小项目家庭记账程序 **1.项目目标:** 2.项目需求: 3.具体思路: 4.具体代码: 1.页面: 2.Option_1类: 3.Option_2类: 4.Option_3类: ...

  9. Java毕设项目师生健康信息管理系统(java+VUE+Mybatis+Maven+Mysql)

    Java毕设项目师生健康信息管理系统(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(W ...

最新文章

  1. Android Studio使用Lint进行代码检查
  2. mysql大小写问题
  3. 利用shell脚本添加环境变量
  4. 校园招聘 - 比较容易的面试题
  5. 各种主流Linux操作系统概况
  6. 头脑风暴算法代码_混乱的头脑导致混乱的代码
  7. 1.1内置数据类型概述
  8. js获取的值传到java_使用GraalVM从javascript将变量参数传递给java函数
  9. 基于spring多数据源动态调用及其事务处理
  10. 添加内核驱动模块(1)(mydriver.c+ Konfig+Makefile )
  11. 迁移学习—Geodesic Flow Kernel for Unsupervised Domain Adaptation
  12. iOS设备踢出恢复模式的几种方法
  13. Java LeetCode每日一题-从易到难带你领略算法的魅力(七):Z 字形变换
  14. 你遇到过哪些质量很高的 Java 面试?
  15. oracle diagnosticdest,Oracle 11g自动诊断信息库(Automatic Diagnostic Repository,ADR)概述
  16. “select count (1)”是什么意思?
  17. python爬取百度使用kw关键字爬取时出现,百度安全验证,解决方法
  18. 来嘉兴培训的第一天——整顿与准备
  19. Qt 获取 MacBook 设备序列号
  20. OpenCV如何进行图像的平滑和锐化处理?

热门文章

  1. 如何保护自己的网络隐私
  2. JWT(Golang)
  3. mysql中$和_在数据库中,$和#代表什么意思?
  4. js 实现页面语音播报
  5. mac idea java 配置_Mac JAVA环境变量配置及IDEA JDK配置
  6. easyUI,radio控制select
  7. 计算机组成原理-选择题错题
  8. chrome审查元素功能
  9. conda install -y 参数
  10. 绿联扩展坞拆解_用过才知道,华为P30搭配绿联扩展坞可实现众多有趣玩法