新手易懂的Java客户管理小项目

目录
  • 成果展示
    • 功能一:添加客户
    • 功能二:修改客户
    • 功能三:客户删除
    • 功能四:展示客户列表
  • 思路分析
  • 代码部分
    • 1.数据存储部分:
    • 2.函数功能部分:
    • 3.可视化界面部分:
  • 项目总结

每日一语:花开蝶自来!!!

前言:随着我把狂神的Java的基础篇看完,我觉得我应该是把Java的基础应该没什么问题了,所以我决定找一个小项目写写,所以我就看了尚硅谷的基础小项目,不看不知道,一看吓一跳,我发现我虽然看完了基础的部分,但是我自己用起来还是有很多不足的地方,好在我请教了一些大佬们帮我解决这些问题,在这里也是很感谢他们!!!接下来话不多说我们直接上代码!!!

成果展示

初始化界面:

功能一:添加客户

我们来看看添加后的效果:

可以看见我们是添加成果了,我们可以继续下面的操作。

功能二:修改客户

我们来看看是否修改成功:

可以看到我们是修改成功的!!!

功能三:客户删除

从图上看我们是删除成功的

功能四:展示客户列表

因为刚才把鲨鱼辣椒删了所以现在只剩铁甲小宝了哈哈哈哈哈哈哈哈哈哈。

思路分析

我们可以把这个项目分为三个部分:

1.数据的存储部分。

2.一些功能函数部分。

3.可视化界面部分。

1.

首先我们来看看数据的存储是怎么构建的:

我们先创建一个Customer的一个Java文件,用来存储数据,使用构造器初始化数据,并且用private进行封装一些数据。并且用 set 和 get 获取数据。

2.

四个功能函数的实现

第一个就是添加客户数据,我们看下面的代码实现!!

    public boolean addcust(Customer customer){
        if (total >= customers.length){return false;
        }else{
            customers[total++] = customer;
        }
        return true;

    }

第二个修改:

    public  boolean replacecust(int index , Customer customer){
        if (index<0 || index >= customers.length){
            return false;
        }else{
            customers[index] = customer;
        }
        return true;
    }

第三个删除:

    public boolean deletecust(int index){
        if (index<0 || index >= customers.length){
            return false;
        }
       for(int i = index; i< total - 1;i++){
           customers[i] = customers[i+1];
       }
       customers[total-1 ]= null;
       total --;

        return true;

    }

第四个查看所有的客户:

   public  Customer[] getCustomers(){
        Customer[] cus = new Customer[total];
        for(int i = 0; i < total; i++){
            cus[i] = customers[i];

        }
        return cus;

嘿嘿嘿,我就偷个懒,思路我就不具体写了,大家可以看代码嘿嘿嘿!

3.

也就是我们在上面看见的可视化的部分,所以我们来构建这部分:

先创建能让我们看见的部分:

我们在使用功能的时候也是用的数字选择,我们可以使用switch结构进行选择,并且在相应的数字里面调用相对应的函数:

代码部分

1.数据存储部分:

package cus;

public class Customer {
    private String name;
    private char grade;
    private  int age;
    private String phone;
    private String email;

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public int getAge() {
        return age;
    }

    public void setGrade(char grade) {
        this.grade = grade;
    }

    public char getGrade() {
        return grade;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getEmail() {
        return email;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getPhone() {
        return phone;
    }

    public Customer(){

    }
    public Customer(String name ,int age , char grade, String email,String phone ){
        this.name = name;
        this.email = email;
        this.grade = grade;
        this.age = age;
        this.phone = phone;

    }
}

2.函数功能部分:

package cus;

public class CustomerList {
    private Customer[] customers;
    private static int total = 0;

    public CustomerList(int totalCustomerList){
        customers = new Customer[totalCustomerList];
    }

    public boolean addcust(Customer customer){
        if (total >= customers.length){return false;
        }else{
            customers[total++] = customer;
        }
        return true;

    }
    public  boolean replacecust(int index , Customer customer){
        if (index<0 || index >= customers.length){
            return false;
        }else{
            customers[index] = customer;
        }
        return true;
    }
    public boolean deletecust(int index){
        if (index<0 || index >= customers.length){
            return false;
        }
       for(int i = index; i< total - 1;i++){
           customers[i] = customers[i+1];
       }
       customers[total-1 ]= null;
       total --;

        return true;

    }
    public  Customer[] getCustomers(){
        Customer[] cus = new Customer[total];
        for(int i = 0; i < total; i++){
            cus[i] = customers[i];

        }
        return cus;

    }
    public Customer getCust(int indsx){
        if(indsx<0 || indsx >= total){
            return null;
        }
        return customers[indsx];    }
    public   int getTotal(){
        return total;
    }

}

3.可视化界面部分:

package cus;
import java.util.Scanner;

public class View {
    private static CustomerList customerList = new CustomerList(10);
    public View(){
        Customer customer = new Customer("李华",18,'8',"2222@qq.com","123445697");
        customerList.addcust(customer);
    }
    public void enterMain(){
        System.out.println("1.添加用户");
        System.out.println("2.修改客户");
        System.out.println("3.删除客户");
        System.out.println("4.客户列表");
        System.out.println("5.退出");
    }

    public static void main(String[] args) {
        View view = new View();

        Scanner scanner = new Scanner(System.in);
        boolean ifFage = true;
        while (ifFage){
            view.enterMain();
            System.out.println("请输入:");
            switch (scanner.nextInt()){
                case 1:
                    addNewcust();
                    break;

                case 2:
                    modifyCust();
                    break;

                case 3:
                    System.out.println("请输入序号:");
                    deleetCust();
                    break;

                case 4:
                    listAllCustomer();
                    break;

                case 5:
                    System.out.println("是否退出?(1:退出,2:继续!!)");
                    if (scanner.nextInt() == 1){
                    System.out.println("退出!");
                    ifFage = false;}

            }

        }
    }
    private static void  addNewcust(){
        Scanner scanner = new Scanner(System.in);
        System.out.println("姓名:");
        String name = scanner.nextLine();
        System.out.println("年龄:");
        int age = scanner.nextInt();
        System.out.println("性别:");
        char grade = (char)scanner.nextInt();
        System.out.println("邮箱:");
        String email = scanner.next();
        System.out.println("电话:");
        String phone = scanner.next();

        Customer customer = new Customer(name,age,grade,email,phone);
        customerList.addcust(customer);
        System.out.println("添加成功!");

//        System.out.println("方法1");

    }
    private static void modifyCust(){
        Scanner scanner = new Scanner(System.in);
        Customer cust = null ;
        int t;
        for (;;) {
            System.out.println("输入-1退出!");
            t = scanner.nextInt();
            if (t == -1 ) break;
            cust = customerList.getCust(t-1);
            if(cust == null){
                System.out.println("没有该用户!");
            }else{
                break;
            }
        }
        System.out.println("姓名("+cust.getName()+")");
        System.out.println("修改为:");
        String name = scanner.next();
        System.out.println("年龄("+cust.getAge()+")");
        System.out.println("修改为:");
        int age = scanner.nextInt();
        System.out.println("性别("+cust.getGrade()+")");
        System.out.println("修改为:");
        char grade = (char)scanner.nextInt();
        System.out.println("邮箱("+cust.getEmail()+")");
        System.out.println("修改为:");
        String email = scanner.next();
        System.out.println("手机("+cust.getPhone()+")");
        System.out.println("修改为:");
        String phone = scanner.next();
        Customer customer = new Customer(name,age,grade,email,phone);
        boolean i = customerList.replacecust(t-1,customer);
        if (i == false ){
            System.out.println("修改失败!");
        }else{
            System.out.println("修改成功!");
        }

    }
    private static void deleetCust(){
        int total = customerList.getTotal();
        Scanner scanner = new Scanner(System.in);
        int a = scanner.nextInt();
        if(a <0 || a>total)
        {System.out.println("没有该用户!");}else{
        boolean customer1 = customerList.deletecust(a-1);
        if (customer1 == false){
            System.out.println("删除失败!");
        }else {
            System.out.println("删除成功!!");
        }
        }
    }
    private static void listAllCustomer(){
        int total = customerList.getTotal();
        if (total == 0){
            System.out.println("没有客户记录!");
        }else{
            System.out.println("客户名单:");
            Customer[] custs = customerList.getCustomers();
            for(int i = 0; i<custs.length ; i++) {
                Customer cust = custs[i];
                System.out.println(i+1+"\t"+cust.getName()+"\t"+cust.getAge()+"\t"+cust.getEmail()+"\t"+cust.getPhone()+"\t"+cust.getGrade());
            }
        }
    }

}

项目总结

最后也来说说这个项目吧,因为是练手的小项目,也是我的第一个Java小项目,所以写一篇博客记录一下,并不是什么高级项目,如果一些大佬觉得写的垃圾,也可以给我说一下,我会更加努力的改进,总得来说任重而道远!!!

到此这篇关于新手易懂的Java客户管理小项目的文章就介绍到这了,更多相关Java 客户管理内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Java 实战项目之学生信息管理系统的实现流程

    一.项目简述 功能包括: 用户的登录注册,学生信息管理,教师信息管理,班级信 息管理,采用mvcx项目架构,覆盖增删改查,包括学生, 教币班级的信息导出上传导入等等功能. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持) 项目技术: JSP +Spring + SpringMVC + MyBatis + html+ css + JavaScript + JQuer

  • Java 实战项目之精美物流管理系统的实现流程

    一.项目简述 本系统功能包括: 数据统计.收件录入.发件录入.到件录入.派件录入.问题件录入.退件录入.留仓录入.装车录入.发车录入.到车录入.卸车录入.运单录入.运单编辑.运单查询.数据导入.签收录入.签收查询.快件跟踪.自定义跟踪.问题件跟踪.预付款管理.财务报表明细.现金账单.月结账单.代收货款.业务员提成.订单分配.订单查询.物品名维护.入库.出库.库存.物料.角色管理.用户管理.系统设置.员工维护.客户维护.网点维护.报价维护.其他维护.收发记录.到件预报. 二.项目运行 环境配置:

  • Java 实战项目之精品养老院管理系统的实现流程

    一.项目简述 本系统功能包括:通知公告,老人管理,护工管理,问答管理等等功能. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持). 项目技术: Springboot + Maven + mybatis+ Vue 等等组成,B/S模式 + Maven管理等等. 系统控制器(登录.注销.修改.新增登)业务: /** * 系统控

  • Java顺序表实现图书管理系统

    本文实例为大家分享了Java顺序表实现图书管理系统的具体代码,供大家参考,具体内容如下 一.简介 实现此项目的目的是巩固并理解前面的知识点:类,抽象类,封装,继承,多态,接口等 二.核心需求 管理端   查阅书籍   增加书籍   删除书籍   打印书籍列表   退出系统 用户端   查询书籍   借阅书籍   归还书籍   打印书籍列表   退出系统 三.类的设计 1. 创建图书类 图书类中包含图书的名称,价格,类型,作者和是否被借出等信息,并生成构造方法,Getter()和Setter()方

  • Java 实战图书管理系统的实现流程

    一.项目简述 功能包括(管理员和学生角色): 管理员和学生登录,图书管理,图书添加删除修改,图书 借阅,图书归还,图书查看,学生管理,借还管理,读者 管理,密码管理,信息修改等等功能. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持) 项目技术: JSP +Spring + SpringMVC + MyBatis + html+ css + JavaScript

  • Java 实战项目之毕业设计管理系统的实现流程

    一.项目简述 功能包括: 该系统不错分为学生,教师,管理员,教导主任四种角 色,包括学生管理,教师管理,学生选题,教师选题,主 任审核,管理员审核,开题报告,中期检查,论文提交, 文件管理等等非常不错. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持) 项目技术: JSP +Spring + SpringMVC + MyBatis + html+ css + Ja

  • Java 实战项目之教材管理系统的实现流程

    一.项目简述 功能包括: 管理员可以增删改查教材.教材商.入库教材.用户(用 户包括学生和教师)可以对教材商.教材进行.Excel的导入 导出操作.教师以领取入库的教材,可以退还教材.学生只能在对应的教师那里领取教材,并且可以退还教材. 查询自己已经领取的教材.并且对已领教材付款等等. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持) 项目技术: JSP +Spr

  • Java 实战项目之CRM客户管理系统的实现流程

    一.项目简述 功能包括: 用户管理,系统管理,客户管理,客户服务,客户关怀, 销售机会,统计管理等等. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持) 项目技术: JSP +Spring + SpringMVC + MyBatis + html+ css + JavaScript + JQuery + Ajax + layui+ maven等等. 员工操作: /

  • 新手易懂的Java客户管理小项目

    目录 成果展示 功能一:添加客户 功能二:修改客户 功能三:客户删除 功能四:展示客户列表 思路分析 代码部分 1.数据存储部分: 2.函数功能部分: 3.可视化界面部分: 项目总结 每日一语:花开蝶自来!!! 前言:随着我把狂神的Java的基础篇看完,我觉得我应该是把Java的基础应该没什么问题了,所以我决定找一个小项目写写,所以我就看了尚硅谷的基础小项目,不看不知道,一看吓一跳,我发现我虽然看完了基础的部分,但是我自己用起来还是有很多不足的地方,好在我请教了一些大佬们帮我解决这些问题,在这里

  • Java雇员管理小项目

    在学习集合框架的时候,初学者很容易练习到学生管理系统.雇员管理体统等练习题.在学习集合框架之前,基本上Java基本语法都学完了,集合框架也从侧面的检验对前面学习的理解.下面用一个曾经做过的练习题,回顾集合框架,以及简要介绍面向对象编程思想.我发现旧的知识,当你再回头去看的时候,理解会更透彻.最近巩固基础ing. 工具:记事本,方便编译和演示 环境:将代码放在一个类当中了(这个习惯很不好) 目的:回顾知识,理解面向对象编程 代码实例(分四块,直接用即可) 1.导包 import java.util

  • Java练手小项目实现一个项目管理系统

    目录 前言: 一.项目需求 二.功能实现 三.具体模块的实现 四.总结 前言: 时隔多日,我们学习完java的面向对象阶段,毕竟需要付诸实践,这个小项目就 作为我们第一个java面向对象解决的项目,接下来就让我们一起进入项目的世界吧 一.项目需求 • 模拟实现一个基于文本界面的 < 项目开发团队分配管理软件 > • 熟悉 Java 面向对象的高级特性,进一步掌握编程技巧和调试技巧 •主要涉及以下知识点: Ø 类的继承性和多态性 Ø 对象的值传递.接口 Ø static 和 final 修饰符

  • Java基础巩固小项目点菜系统的实现

    目录 项目简绍 所需技术 思路讲解 完整代码演示 优化 结语 项目简绍 点菜小系统,可以实现点菜,查看已经点的菜,买单查看总金额 所需技术 面向对象,集合(ArrayList) 因为项目真的很小,所需要技术很有限,真的比较简单 思路讲解 创建菜品类.属性 创建菜品列表并进行初始化 主菜单循环 对选项补充,创建所需方法 完善代码并测试 优化代码 完整代码演示 import java.util.ArrayList; import java.util.List; import java.util.Sc

  • Java小项目之迷宫游戏的实现方法

    项目要求: 一个网格迷宫由n行n列的单元格组成,每个大院个要么是空地(用0表示),要么是障碍物(用1表示),你的任务是找一条从起点到终点的移动序列,其中只能上下左右移动到相邻单元格.任何时候都不能在有障碍物的单元格中,也不能走到迷宫之外,起点为左上角和终点右下角. 项目功能: 解决迷宫路径查找问题,寻找一条从左上角迷宫入口到右下角迷宫出口的一条有效路径,0代表可走,1代表能走,找到请输出最终的迷宫和路径信息,找不到请输出不存在有效路径. 思路: 1.定义一个迷宫节点类型(MazeNode)的二维

  • Java语言实现简单的酒店前台管理小功能(实例代码)

    笔者是一名刚上路的小萌新,有什么问题希望大家可以指正! 以下为题目: 为某个酒店编写程序:酒店管理系统,模拟订房.退房.打印所有房间状态等功能. 1.该系统的用户是:酒店前台. 2.酒店使用一个二维数组来模拟."Room[][] rooms;" 3.酒店中的每一个房间应该是一个java对象:Room 4.每一个房间Room应该有:房间编号.房间类型.房间是否空闲. 5.系统应该对外提供的功能: 可以预定房间:用户输入房间编号,订房. 可以退房:用户输入房间编号,退房. 可以查看所有房间

  • 小项目中管理npm包版本的思路与方法

    背景 笔者在最近碰到一个问题: 有一些项目没有类似jenkins的自动部署平台,前端部署都是本地执行npm run build命令生成压缩包,然后放到服务器上面,解压到nginx 目录, 但是有的时候遇到一个问题,比如项目中某个成员升级了其他组写的一个组件packageA,但是其他成员可能没有升级,导致上线后就会有一些问题,一个包还好,如果有好几个包都没有升级,那么可能导致一些意想不到的问题. 思路 首先就这个问题,我思考后有以下几个问题 package.json中的包名的版本有几个是用的^x.

  • 基于Java SSM的健康管理小程序的实现

    目录 一.系统的简介 二.系统实现的主要功能 三.系统的界面演示 四.核心代码展示 一.系统的简介 开发语言:Java 框架:ssm JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7(一定要5.7版本) 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven包:Maven3.3.9 浏览器:谷歌浏览器 二.系统实现的主要功能 (1)用户管理.主要实现了健康管理小程序的用户管理功能. (2)登录注册.小程序端可以登录注册. (

  • Java实现2048小游戏(可直接运行)

    运行效果: 1.项目结构 2.代码 BaseData接口 package com.hsy.game; import java.awt.*; public interface BaseData { Font topicFont = new Font("微软雅黑", Font.BOLD, 50); Font scoreFont = new Font("微软雅黑", Font.BOLD, 28); Font normalFont = new Font("宋体&q

  • 新手小白学JAVA IDEA下载使用手册全集

    IDEA 新手使用手册 1 简介 IDEA的全称是IntelliJ IDEA,这是一个java编程语言开发的集成环境. IDEA的每一个方面都是为了最大限度地提高开发人员的工作效率而设计的,它的智能编码辅助和人机工程学设计会让开发过程变得愉悦且高效. IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主.它的旗舰版本还支持HTML,CSS,PHP,MySQL,Python等.免费版只支持Java,Kotlin等少数语言. Intell

随机推荐