客户信息管理软件实现增删改功能

package com.atguigu.bean;

public class Customer {
        private String name;
        private String sex;
        private int age;
        private String phone;
        private String email;
        public Customer() {
        	super();
        }
		public Customer(String name, String sex, int age, String phone, String email) {
			super();
			this.name=name;
			this.sex=sex;
			this.age=age;
			this.phone=phone;
			this.email=email;
		}
		public String getName() {
			return name;
		}
		public void setName(String name) {
			this.name = name;
		}
		public String getSex() {
			return sex;
		}
		public void setSex(String sex) {
			this.sex = sex;
		}
		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;
		}
		public String getInfo() {
			return name+"\t"+sex+"\t"+age+"\t"+phone+"\t"+email;
		}
}

package com.atguigu.view;

import java.util.Scanner;

import com.atguigu.bean.Customer;
import com.atguigu.service.CustomerService;

public class CustomerView {
	private CustomerService cs=new CustomerService();
	java.util.Scanner input=new java.util.Scanner(System.in);
	public void menu() {
		boolean flag=true;
		while(flag) {
		System.out.println("-----------------------客户信息管理软件--------------------------------------------");
		System.out.println("\t\t\t1添加客户");
		System.out.println("\t\t\t2修改客户");
		System.out.println("\t\t\t3删除客户");
		System.out.println("\t\t\t4客户列表");
		System.out.println("\t\t\t5退        出");
		System.out.print("\t\t\t请选择(1-5):");
		
		int select=input.nextInt();
		switch(select) {
		      case 1:
			          add();
			          break;
		      case 2:
			          upadte();
			          break;
		      case 3:
			          delete();
			          break;
		      case 4:
			          list();
			          break;
		      case 5:
		    	  System.out.println("确认是否输出y/n:");
		    	  char confirm=input.next().charAt(0);
		        	 if(confirm=='Y'||confirm=='y')
		        	 {
		        		flag=false;
		        	 }
			
		}
		}
	}

	

	private void list() {
		// TODO Auto-generated method stub
		//调用CustomerService 类的getall方法
		Customer[] all=cs.getAll();
		//2遍历显示
		
		System.out.println("-----------------------客户信息--------------------------------------------");
		System.out.println("编号\t姓名\t性别\t年龄\t电话\t邮箱");
		for(int i=0;i<all.length;i++) {
			//打印客户对象的信息
			System.out.println((i+1)+"\t"+all[i].getInfo());
		}
		System.out.println("-----------------------客户信息列表完成--------------------------------------------");
	}



	private void delete() {
		// TODO Auto-generated method stub
		System.out.println("-----------------------刪除客户信息--------------------------------------------");
		System.out.println("\t选择删除客户的编号:");
		int id=input.nextInt();
		if(id==-1) {
			return;
		}
		System.out.println("\t确认是否删除:(y/n)");
		char confirm=input.next().charAt(0);
		if(confirm=='n'||confirm=='N') {//如果不删除就结束
			return;
		}
		//调用customerServic类的removebyid(int id)删除
		cs.removeById(id);
		System.out.println("-----------------------删除完成---------------------------------------------------");
	}



	private void upadte() {
		// TODO Auto-generated method stub
		System.out.println("-----------------------更新客户信息--------------------------------------------");
		System.out.println("请选择待修改客户编号(-1退出):");
		int id=input.nextInt();
		if(id==-1) {//退出
			return ;
		}
		//调用CustomerSerivce的getbyid获取该客户对象的原来信息
		Customer old=cs.getById(id);
		//输入新的数据
		System.out.println("姓名("+old.getName()+"):");
		String name = input.next();
		System.out.println("性别("+old.getSex()+"):");
		String  sex=input.next();
		System.out.println("年龄("+old.getAge()+"):");
		int age=input.nextInt();
		System.out.println("电话("+old.getPhone()+"):");
		String phone=input.next();
		System.out.println("邮箱("+old.getEmail()+"):");
		String email=input.next();
		
		//创建一个新的客户对象
		Customer newCustomer=new Customer(name,sex,age,phone,email);
		
		//替换数组中原来的客户对象
		//调用CustomerService的replace(id,newCustomer)
		
		System.out.println("-----------------------修改完成----------------------------------------------------");
	}



	private void add() {
		// TODO Auto-generated method stub
		System.out.println("-----------------------添加客户信息--------------------------------------------");
		System.out.print("姓名:");
		String name=input.next();
		System.out.print("性別:");
		String  sex=input.next();
		System.out.print("年齡:");
		int age=input.nextInt();
		System.out.print("電話:");
		String phone=input.next();
		System.out.print("郵箱:");
		String email=input.next();
		//创建Customer對象
		Customer c=new Customer(name,sex,age,phone,email);
		//调用CustomerService 
		//CustomerService  cs=new CustomerService ();
		cs.addCustomer(c);
		System.out.println("-----------------------添加完成--------------------------------------------");
	}
}

package com.atguigu.service;

import com.atguigu.bean.Customer;

public class CustomerService {
    private Customer[] all;//存储客户对象
    private int total;
    
    public CustomerService() {
    	all=new Customer[10];
    }
    public CustomerService(int initSize) {
    	all=new Customer[initSize];
    }
    public void addCustomer(Customer c) {
    	if(total>=all.length) {
    		System.out.println("数组已满");
    		return;
    	}
    	all[total++]=c;
    }
    //返回所有已经存储的客户对象
   public Customer[] getAll() {
	 //  return all;
	   Customer [] result=new Customer[total];
	   for(int i=0;i<total;i++) {
		   result[i]=all[i];
	   }
	   return result;
   }
   //根据编号删除客户信息
   public void removeById(int id) {
	   //确定下标
	   int index=id-1;
	   //检查下标合理性
	   if(index<0||index>=total) {
		   System.out.println(id+"对应的客户不存在");
		   return ;
		   	
	   }
	   //把index+1
	   System.arraycopy(all, index+1, all, index,total-index-1);
	   //把最后一个置为null
	   all[--total]=null;
	   
   }
   //根据编号查找客户
   public Customer getById(int id) {
	   //确定下标
	   int index=id-1;
	   //检查下标
	   if(index<0||index>=total) {
		   System.out.println(id+"对应的客户不存在");
		   return null;   	
	   }
	   //返回index客户对象
	   return all[index];
   }
    //根据客户编号替换原来的客户对象
   public void replace(int id , Customer newCustomer){
	   //确定下标
	   int index=id-1;
	   //检查下标
	   if(index<0||index>=total) {
		   System.out.println(id+"对应的客户不存在");
		   return;   	
	   }
	   //替换
	   all[index]=newCustomer;
   }
}

package com.atguigu.test;

import com.atguigu.view.CustomerView;

public class Test {
	public static void main(String[] args) {
    	  CustomerView view=new CustomerView();
    	  view.menu();
      }
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值