,,java实现客户信息管理系统

,,java实现客户信息管理系统

本文主要详细介绍了用java实现的客户信息管理系统。本文中的示例代码非常详细,具有一定的参考价值。感兴趣的朋友可以参考一下。

本文分享java客户信息管理系统的具体代码,供大家参考。具体内容如下。

一、CMUtility工具类

不同的函数封装成方法,即可以通过调用方法直接使用,不需要考虑具体函数的细节。

代码如下:

包com . p2 . util;

导入Java . util . *;

/**

*工具类别

*不同的函数封装成方法,就是你可以通过调用方法直接使用它的函数,不用考虑具体的工作。

*可以实现细节。

*

**/

公共类CMUtility {

私有静态扫描器scanner=新扫描器(system . in);

/**

*用于界面菜单选择。这个方法读取键盘。如果用户键入“1”到“5”中的任何字符,该方法将返回。

*返回值是用户选择的数字。

**/

public static char readMenuSelection(){

char c;

for(;){

String str=readaKeyBoard(1,false);

c=str . charat(0);

如果(c!='1' c!='2' c!='3' c!='4'

c!='5'){

System.out.println('选择错误,请重新输入:');

}else破;

}

返回c;

}

/**

*从键盘读取一个字符,并将其作为方法的返回值。

**/

public static char readChar(){

String str=readaKeyBoard(1,false);

返回str . charat(0);

}

/**

*从键盘读取一个字符,并将其作为方法的返回值。

*如果用户不输入字符而直接按enter,该方法将把defaultValue作为返回值。

**/

public static char read char(char default value){

String str=readaKeyBoard(1,true);

return (str.length()==0)?default value:str . charat(0);

}

/**

*从键盘上读取一个不超过2位数的整数,作为方法的返回值。

**/

public static int readInt(){

int n;

for(;){

String str=readaKeyBoard(2,false);

尝试{

n=integer . parse int(str);

打破;

} catch(NumberFormatException e){

System.out.println('数字输入错误,请重新输入:');

}

}

返回n;

}

/**

*从键盘上读取一个长度不超过2位的整数,作为方法的返回值。

*如果用户不输入字符而直接按enter,该方法将把defaultValue作为返回值。

**/

public static int readInt(int default value){

int n;

for(;){

String str=readaKeyBoard(2,true);

if(字符串等于(')){

返回默认值;

}

尝试{

n=integer . parse int(str);

打破;

} catch(NumberFormatException e){

System.out.println('数字输入错误,请重新输入:');

}

}

返回n;

}

/**

*从键盘上读取一个长读数不超过limit的字符串,作为方法的返回值。

**/

公共静态字符串readString (int limit){

返回readaKeyBoard(limit,false);

}

公共静态字符串readString (int limit,String defaultValue){

返回readaKeyBoard(limit,false);

}

/**

*从键盘上读取一个疮毒不超标的字符串作为方法的返回值。

*如果用户没有输入字符而是直接返回,则该方法将defaultValue作为返回值。

**/

public static char readconfirmselection(){

char c;

for(;){

String str=readaKeyBoard(1,false)。toupper case();

c=str . charat(0);

if (c=='Y' || c=='N'){

打破;

}否则{

System.out.println('选择错误,请重新输入:');

}

}

返回c;

}

私有静态字符串readaKeyBoard(int limit,boolean blankReturn){

字符串行=“”;

while (scanner.hasNextLine()){

line=scanner . nextline();

if(line.length()==0){

if (blankReturn)返回行;

否则继续;

}

if(line . length()1 | | line . length()limit){

System.out.println('输入长度(不大于' limit ')错误,请重新输入:');

继续;

}

打破;

}

回流线;

}

}

二、Customer

代码如下:

包com . p2 . bean;

/**

*将对象封装到方法中

*

*

**/

公共类客户{

私有字符串名称;//客户名称

私有char性别;//性别

私人年龄;//年龄

私弦电话;//电话号码

私人字符串电子邮件;//电子邮箱

//构造器

//方法(封装)

公共客户(字符串名称、字符性别、年龄、字符串电话、字符串电子邮件){

this.name=name

this.gender=性别;

this.age=年龄;

这个电话=电话

this.email=电子邮件

}

公共客户(){

}

公共字符串getName(){

返回名称;

}

公共void集合名称(字符串名){

this.name=name

}

public char getGender() {

返回性别;

}

public void set gender(char gender){

this.gender=性别;

}

public int getAge() {

回归年龄;

}

公共无效存储(整数){

this.age=年龄;

}

公共字符串getPhone() {

回电话;

}

公共电话(字符串电话){

这个电话=电话

}

公共字符串getEmail() {

回复邮件;

}

公共void setEmail(字符串电子邮件){

this.email=电子邮件

}

}

三、CustomerList

代码如下:

包com。p2。服务;

/**

* 最主要的

*

**/

导入com。p2。比恩。客户;

公共类客户列表{

私人客户[]客户;

private int total=0;

//构造器

/**

* 用来初始化客户数组的构造器

* @param totalCustomer:指定数组的长度

**/

公共客户列表(int总客户){//给正在创建的对象进行初始化

客户=新客户[总客户];

}

//方法

/**

* 将指定的客户添加到数组中

* @param客户

* @返回成功没错,失败:错误

**/

公共布尔型添加客户(客户客户){//增

if(合计0 | |合计=客户。长度){

返回错误的

}

客户[总数]=客户;

返回真实的

}

/**

* 修改指定位置的客户信息

* @param索引

* @param cust

* @返回

**/

public boolean替换客户(int index,Customer cust){//改

if(index 0 || index=total){

返回错误的

}

客户[索引]=顾客;

返回真实的

}

/**

* 删除指定位置上的客户

* @param索引

* @返回

**/

public boolean deletescushopher(int index){//删除

if(index 0 || index=total){

返回错误的

}

for(int I=index;一。总数-1;i ){

客户[我]=客户[I 1];

}

//最后有数据的元素需要置空

//customers[total-1]=null;

//total-;

客户[ -总计]=空;

返回真实的

}

/**

* 获得所有的客户信息

* @返回

**/

公共客户[] getAllCustomers() {//查询所有

客户[]客户=新客户[合计];

for(int I=0;我总计;i ){

客户[我]=客户[I];

}

退货客户;

}

/**

* 获取指定位置上的客户信息

* @param索引

* @返回

**/

公共客户getCustomer(int index) {//查询一个

if(index 0 || index=total){

返回空

}

回头客[索引];

}

//封装

/**

* 获取存储客户的的数量

* @返回

**/

public int getTotal() {//统计数据

返回总数;

}

}

四、CustomerView

代码如下:

包com。p2。ui;

导入com。p2。比恩。客户;

导入com。p2。服务。客户名单;

导入com。p2。util。cm实用程序;

/**

*

* 用户交互

*

*

*

**/

公共类客户视图{

私有客户列表客户列表=新客户列表(100);

公共客户视图(){

客户客户=新客户('王涛','男,23,' 13213123 ',' wt @ Gmail。com’);

customerList.addCustomer(客户);

}

/**

* 显示《客户信息管理软件》

**/

public void enterMainMenu(){

布尔isFlag=true

while(isFlag){

System.out.println('\n -客户信息管理软件- ');

System.out.println(' 1 .添加客户');

System.out.println(' 2 .修改客户');

System.out.println(' 3 .删除客户');

System.out.println(' 4 .客户列表');

System.out.println(' 5 .退出\ n’);

System.out.print('请选择(1-5):');

char菜单=cm实用程序。readmenuselection();

开关(菜单){

案例"1":

addNewCustomer();

打破;

案例"2":

修改客户();

打破;

案例"3":

删除客户();

打破;

案例"4":

list all customers();

打破;

案例"5":

//System.out.println('退出');

System.out.println('确认是否退出(是/否):');

char是exit=cm实用程序。readconfirmselection();

if(isExit=='Y'){

isFlag=false

}

//break;

}

//is flag=false;

}

}

/**

* 添加客户

*

**/

私有void addNewCustomer(){

System.out.println(' -添加客户- ');

System.out.print('姓名:');

字符串名称=cm实用程序。读取字符串(10);

System.out.print('性别:');

char gender=cm实用程序。read char();

System.out.print('年龄:');

int age=cm实用程序。readint();

System.out.print('电话:');

字符串phone=cm实用程序。读取字符串(13);

System.out.print('邮箱:');

字符串email=cm实用程序。读取字符串(30);

//将上述数据封装到对象中

客户客户=新客户(姓名、性别、年龄、电话、邮箱);

布尔型问题访问=客户列表。添加客户(客户);

如果(问题访问){

System.out.println(' -添加完成- ');

}否则{

System.out.println(' -客户已满- ');

}

}

/**

* 修改客户

**/

私有空的修改客户(){

System.out.println(' -修改客户- ');

客户顾客

(同Internationalorganizations)国际组织数;

for(;){

System.out.print('选择要修改的客户编号(-1退出):');

数字=cm实用程序。readint();

if (number==-1){

返回;

}否则{

cust=customerList.getCustomer(数字-1);

if(cust==null){

System.out.println('无法找到指定客户!');

}else{//找到相应的客户

打破;

}

}

}

//修改客户信息

System.out.print('姓名:(' cust。getname()'):');

字符串名称=cm实用程序。readstring(10,cust。getname());

System.out.print('性别:(' cust。getgender()'):');

char gender=cm实用程序。读取char(cust。getgender());

System.out.print('年龄:(' cust。getage()'):');

int age=cm实用程序。readint(cust。getage());

System.out.print('电话:(' cust。get phone()'):');

字符串phone=cm实用程序。readstring(13,cust。get phone());

System.out.print('邮箱:(' cust。getemail()'):');

字符串email=cm实用程序。readstring(30,cust。getemail());

客户newcust=新客户(姓名、性别、年龄、电话、邮箱);

布尔被替换=客户列表。替换客户(编号1,新客户);

如果(被替换){

System.out.println('修改成功!');

}否则{

System.out.println('修改失败!');

}

}

/**

* 删除客户

**/

私有void deleteCustomer(){

System.out.println(' -删除客户- ');

(同Internationalorganizations)国际组织数;

for(;){

System.out.print('请选择呆删除客户的编号(-1退出):');

数字=cm实用程序。readint();

if (number==-1){

返回;

}

客户客户=客户列表。获取客户(数字-1);

if (customer==null){

System.out.println('无法找到指定客户!');

}否则{

打破;

}

}

//找到客户了

System.out.println('是否确认删除(是/否):');

char是delete=cm实用程序。readconfirmselection();

if(isDelete=='Y'){

布尔删除成功=客户列表。deletecusthomer(数字-1);

如果(删除成功){

System.out.println(' -删除成功- ');

}否则{

System.out.println(' -删除失败- ');

}

}否则{

返回;

}

}

/**

* 显示客户列表

**/

私有void listAllCustomers(){

//System.out.println('显示客户');

System.out.println(' -客户列表- ');

int total=客户列表。get total();

if(total==0){

System.out.println('没有客户记录!');

}否则{

System.out.println('编号\t姓名\t性别\t年龄\t电话\t\t邮箱');

客户[]客户=客户列表。get all customers();

for(int I=0;icusts.lengthi ){

客户cust=custs[I];

系统。出去。println((I 1)' \ t ' cust。getname()' \ t ' cust。getgender()

\t' cust.getAge()

\ t ' cust。getphone()' \ t ' cust。getemail());

}

}

System.out.println(' -客户列表结束- ');

}

公共静态void main(String[] args) {

客户视图view=新客户视图();

查看。enter main menu();

}

}

五、运行结果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: