需求 :
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;
}
@Override
public 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();
}
}
运行效果: