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

文章描述了一个基于Java的命令行客户管理系统,包括添加、修改、删除和列出客户功能。同时提到了Java面试准备,推荐了相关算法与数据结构书籍和设计模式的学习资源。
摘要由CSDN通过智能技术生成

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

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

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

System.out.println(“5 退 出”);

System.out.println(“请选择(1-5):”);

//调用工具类中的方法判断输入

char c = CMUtility.readMenuSelection();

switch ©{

case ‘1’:

addNewCustomer();

break;

case ‘2’:

modifyCustomer();

break;

case ‘3’:

deleteCustomer();

break;

case ‘4’:

listAllCustomers();

break;

case ‘5’:

System.out.println(“确认是否退出(Y/N):”);

char c1 = CMUtility.readConfirmSelection();

if(c1==‘Y’){

System.out.println(“退出成功”);

//JVM退出,程序结束运行

System.exit(0);

}else {

System.out.println(“已取消退出”);

System.out.println();

}

}

}

}

}

**addNewCustomer()方法的实现:**添加客户信息。

//添加客户

private void addNewCustomer(){

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

System.out.print(“姓名:”);

//调用工具类中的方法判断输入

String name = CMUtility.readString(4);

System.out.print(“性别:”);

char gender = CMUtility.readChar();

System.out.print(“年龄:”);

int age = CMUtility.readInt();

System.out.print(“电话:”);

String phone = CMUtility.readString(11);

System.out.print(“邮箱:”);

String email = sc.next();

//创建客户对象

Customer c = new Customer();

c.setName(name);

c.setGender(gender);

c.setAge(age);

c.setPhone(phone);

c.setEmail(email);

//调用CustomerList中的方法,添加客户对象到数组

boolean b = clt.addCustomer©;

//判断添加的执行结果,并给出提示信息

if(b){

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

}else {

System.out.println(“添加失败!”);

}

System.out.println();

}

界面效果:

**modifyCustomer()方法的实现:**修改客户信息。

//修改客户

private void modifyCustomer(){

//判断客户信息是否为空

if(clt.getTotal()==0){

System.out.println(“当前无客户信息,请添加客户信息后再进行此操作!”);

System.out.println();

}else {

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

System.out.println(“请选择待修改客户编号(-1退出):”);

int index = sc.nextInt();

if(index==-1){

System.out.println(“已退出修改操作”);

System.out.println();

}else{

//将输入的值转化为索引值,执行减一操作

index–;

while (true){

if(index<clt.getTotal() && index>=0){

//格式化输出修改信息时的提示

System.out.print(String.format(“姓名(%s):”,clt.customers[index].getName()));

//调用工具类中的方法,用于限制姓名位数、按下回车默认返回给出的字符串

String xname = CMUtility.readString(4,clt.customers[index].getName());

System.out.print(String.format(“性别(%c):”,clt.customers[index].getGender()));

char xgender = CMUtility.readChar();

System.out.print(String.format(“年龄(%d):”,clt.customers[index].getAge()));

int xage = CMUtility.readInt();

System.out.print(String.format(“电话(%s):”,clt.customers[index].getPhone()));

String xphone = CMUtility.readString(11,clt.customers[index].getPhone());

System.out.print(String.format(“邮箱(%s):”,clt.customers[index].getEmail()));

String xemail = sc.next();

//创建修改后的客户对象

Customer c = new Customer();

c.setName(xname);

c.setGender(xgender);

c.setAge(xage);

c.setPhone(xphone);

c.setEmail(xemail);

//调用CustomerList中的方法,替换客户对象

boolean b = clt.replaceCustomer(index,c);

if(b){

System.out.println(“-----------------修改完成-----------------”);

}else {

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

}

System.out.println();

break;

}else {

System.out.print(“输入的编号有误,请你从新输入:”);

int index1 = sc.nextInt();

//将输入的值减1,赋值后再进行判断

index = index1-1;

}

}

}

}

}

界面效果:

**deleteCustomer()方法的实现:**删除客户信息。

//删除客户

private void deleteCustomer(){

if(clt.getTotal()==0){

System.out.println(“当前无客户信息,请添加客户信息后再进行此操作!”);

System.out.println();

}else{

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

System.out.println(“请选择待删除客户编号(-1退出):”);

int index = sc.nextInt();

if(index==-1){

System.out.println(“已退出删除操作”);

System.out.println();

}else{

index–;

while (true){

if(index<clt.getTotal() && index>=0){

System.out.println(“确认是否删除(Y/N):”);

char c = CMUtility.readConfirmSelection();

if(c==‘Y’){

//调用CustomerList中的方法,删除客户对象并返回结果值

boolean b = clt.deleteCustomer(index);

if (b){

System.out.println(“-----------------删除完成-----------------”);

}else {

System.out.println(“删除失败!”);

}

}else {

System.out.println(“已取消删除”);

}

System.out.println();

break;

}else {

System.out.print(“输入的编号有误,请你从新输入:”);

int index1 = sc.nextInt();

index = index1-1;

}

}

}

}

}

界面效果:

**listAllCustomers()方法的实现:**显示客户列表。

//客户列表

private void listAllCustomers(){

if(clt.getTotal()==0){

System.out.println(“当前无客户信息,请添加客户信息后再进行此操作!”);

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)

img

结局:总结+分享

看完美团、字节、腾讯这三家的一二三面试问题,是不是感觉问的特别多,可能咱们真的又得开启面试造火箭、工作拧螺丝的模式去准备下一次的面试了。

开篇有提及我可是足足背下了Java互联网工程师面试1000题,多少还是有点用的呢,换汤不换药,不管面试官怎么问你,抓住本质即可!能读到此处的都是真爱

  • Java互联网工程师面试1000题

image.png

而且从上面三家来看,算法与数据结构是必备不可少的呀,因此我建议大家可以去刷刷这本左程云大佬著作的 《程序员代码面试指南 IT名企算法与数据结构题目最优解》,里面近200道真实出现过的经典代码面试题。

  • 程序员代码面试指南–IT名企算法与数据结构题目最优解

image.png

  • 其余像设计模式,建议可以看看下面这4份PDF(已经整理)

image.png

  • 更多的Java面试学习笔记如下,关于面试这一块,我额外细分出Java基础-中级-高级开发的面试+解析,以及调优笔记等等等。。。

image.png

以上所提及的全部Java面试学习的PDF及笔记,如若皆是你所需要的,那么都可发送给你!

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

  • 程序员代码面试指南–IT名企算法与数据结构题目最优解

[外链图片转存中…(img-6aiwZFMH-1713140557183)]

  • 其余像设计模式,建议可以看看下面这4份PDF(已经整理)

[外链图片转存中…(img-qOdDmjnk-1713140557183)]

  • 更多的Java面试学习笔记如下,关于面试这一块,我额外细分出Java基础-中级-高级开发的面试+解析,以及调优笔记等等等。。。

[外链图片转存中…(img-cgnld3Yh-1713140557184)]

以上所提及的全部Java面试学习的PDF及笔记,如若皆是你所需要的,那么都可发送给你!

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值