微信小程序> 小程序排行榜2020-Java仅应用数组和类的封装编写通讯录小程序-小程序排名

小程序排行榜2020-Java仅应用数组和类的封装编写通讯录小程序-小程序排名

浏览量:1474 时间: 来源:小金子_jz
Java仅应用数组和类的封装编写通讯录小程序案例程序小结案例

1.利用循环结构、数组和类的封装,在原有界面功能基础上,实现通讯录小程序。*****************欢迎进入通讯录系统*****************1.查询所有联系人2.根据下标查询联系人3.根据下标修改联系人4.根据下标删除联系人5.添加联系人6.根据姓名查询联系人7.清空联系人8.退出系统

2.[注]:分享一个小技巧,正常文本下打不出空格,输入法切换至全角模式,即可打出空格,仅限第二段开始。或者使用&emsp+;一个英文分号,可直接输出一个空格,这个方法无段落限制

程序packagecontact;importjava.util.*;classTest{publicstaticvoidmain(String[]args){Contactc=newContact();c.menu();//测试类中仅开启通讯录目录}}classContact{//通讯录Scanners=newScanner(System.in);//属性privateLinkMan[]linkman=newLinkMan[5];privateintcount;//统计有效联系人数量//构造方法publicContact(){}//方法publicvoidmenu(){//菜单intselect;init();do{System.out.println("*******************欢迎进入通讯录系统********************");System.out.println("********1.查询所有联系人2.根据数组下标查询联系人");System.out.println("********3.根据下标修改联系人4.根据下标删除联系人");System.out.println("********5.添加联系人6.根据姓名查询联系人");System.out.println("********7.清空联系人8.退出系统");System.out.println("请输入序号");select=s.nextInt();switch(select){case1:allLinkMan();break;case2:checkLinkMan();break;case3:changeLinkMan();break;case4:delLinkMan();break;case5:addLinkMan();break;case6:checkName();break;case7:clear();break;case8:System.out.println("感谢使用");break;default:System.out.println("输入有误,请重新输入");}}while(select!=8);}publicvoidinit(){//初始化linkman[0]=newLinkMan("皮皮虾",2,'男',"188001","188001@163.com","中国");linkman[1]=newLinkMan("小黑屋",1,'女',"188002","188002@163.com","中国");linkman[2]=newLinkMan("皮小妹",1,'男',"188003","188003@163.com","中国");count=3;}publicvoidallLinkMan(){//1.查询所有联系人if(count0){for(inti=0;icount;i++){linkman[i].show();}}elseSystem.out.println("暂无联系人");}publicvoidcheckLinkMan(){//2.根据数组下标查询联系人System.out.print("请输入要查询的下标(0-"+(count-1)+"):");intxiabiao=s.nextInt();if(xiabiao=0&&xiabiaocount){//下标大小不能超过有效联系人数linkman[xiabiao].show();}elseSystem.out.println("暂无此联系人");}publicvoidchangeLinkMan(){//3.据下标修改联系人System.out.print("请输入要修改的下标(0-"+(count-1)+"):");intxiabiao=s.nextInt();intselect;do{System.out.println("请选择要修改的选项:1-姓名2-年龄3-性别");System.out.println("4-电话5-邮箱6-地址");System.out.println("7-退出修改");select=s.nextInt();switch(select){case1:System.out.print("请输入修改后的名字:");linkman[xiabiao].setName(s.next());break;case2:System.out.print("请输入修改后的年龄:");linkman[xiabiao].setAge(s.nextInt());break;case3:System.out.print("请输入修改后的性别:");linkman[xiabiao].setSex(s.next().charAt(0));break;case4:System.out.print("请输入修改后的电话:");linkman[xiabiao].setTel(s.next());break;case5:System.out.print("请输入修改后的邮箱:");linkman[xiabiao].setEmail(s.next());break;case6:System.out.print("请输入修改后的地址:");linkman[xiabiao].setAddress(s.next());break;case7:System.out.println("已退出修改");break;default:System.out.println("输入有误,请重新输入");}}while(select!=7);}publicvoiddelLinkMan(){//4.据下标删除联系人System.out.print("请输入要删除的联系人下标(0-"+(count-1)+"):");intxiabiao=s.nextInt();if(xiabiaocount){//要满足下标小于有效联系人数countfor(inti=xiabiao;icount-1;i++){linkman[i]=linkman[i+1];}linkman[count-1]=null;count--;//删除一个联系人,有效数count减1System.out.println("已删除指定联系人");}}publicvoidaddLinkMan(){//5.据下标添加联系人arraysCopy();//判断是否有扩容需求System.out.print("请输入要添加位置的下标(0-"+count+"):");intxiabiao=s.nextInt();if(0=xiabiao&&xiabiao=count){for(inti=count;ixiabiao;i--){linkman[i]=linkman[i-1];}linkman[xiabiao]=newLinkMan();System.out.print("请输入名字:");linkman[xiabiao].setName(s.next());System.out.print("请输入年龄:");linkman[xiabiao].setAge(s.nextInt());System.out.print("请输入性别:");linkman[xiabiao].setSex(s.next().charAt(0));System.out.print("请输入电话:");linkman[xiabiao].setTel(s.next());System.out.print("请输入邮箱:");linkman[xiabiao].setEmail(s.next());System.out.print("请输入地址:");linkman[xiabiao].setAddress(s.next());count++;}elseSystem.out.println("输入的下标有误");}publicvoidcheckName(){//6.根据姓名查询联系人System.out.print("请输入要查询的名字:");Stringname=s.next();booleanmark=true;for(inti=0;icount;i++){if(linkman[i].getName().equals(name)){//String类型内容比较方式linkman[i].show();mark=false;break;}}if(mark){System.out.println("无此联系人");}}publicvoidclear(){//7.清空联系人System.out.println("***请确认是否清空联系人!(1--确认)");intaffirm=s.nextInt();if(affirm==1){for(inti=0;icount;i++){linkman[i]=null;}count=0;System.out.println("****已清空联系人****");}elseSystem.out.println("****取消清空****");}publicvoidarraysCopy(){//数组扩容if(count==linkman.length){linkman=Arrays.copyOf(linkman,linkman.length*2);System.out.println("====扩容了====");}}}classLinkMan{//联系人//属性privateStringname;privateintage;privatecharsex;privateStringtel;privateStringemail;privateStringaddress;//封装publicStringgetName(){returnname;}publicvoidsetName(Stringname){this.name=name;}publicintgetAge(){returnage;}publicvoidsetAge(intage){if(0=age&&age=200)this.age=age;elseSystem.out.println("年龄输入有误");}publicchargetSex(){returnsex;}publicvoidsetSex(charsex){this.sex=sex;}publicStringgetTel(){returntel;}publicvoidsetTel(Stringtel){this.tel=tel;}publicStringgetEmail(){returnemail;}publicvoidsetEmail(Stringemail){this.email=email;}publicStringgetAddress(){returnaddress;}publicvoidsetAddress(Stringaddress){this.address=address;}//构造方法publicLinkMan(){}publicLinkMan(Stringname,intage,charsex,Stringtel,Stringemail,Stringaddress){this.name=name;this.age=age;this.sex=sex;this.tel=tel;this.email=email;this.address=address;}//方法publicvoidshow(){System.out.println("----联系人信息----"+"姓名:"+name+"年龄:"+age+"性别:"+sex+"电话:"+tel+"邮箱:"+email+"地址:"+address);}}小结

3.  本人第一次写博客,以前只是看看,很多功能不知道。是个Java届的萌新,前来CSDN报道,望各位大佬指教。之所以用的只有循环、数组和类的封装,是因为还没有学高深的开发知识。哈哈哈哈哈。  有错误或者需要改进优化的地方望指出,看到会及时回复的~~~ 有一同学习的Java的小伙伴咱们可以相互交流呀。  最后,感谢各位的阅读!!!

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

最新资讯

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎