首页 技术 正文
技术 2022年11月21日
0 收藏 614 点赞 4,539 浏览 2376 个字
项目 内容
课程班级博客链接 19信计班(本)
作业要求链接 作业要求链接
博客名称 1903021121-刘明伟-java第七周作业-客户类测试
要求 每道题要有题目,代码,截图

第一部分:

  • 创建客户业务类,实现客户姓名的添加和显示。

  • 分析: (1)Customer类中需要两个方法,一个增加姓名addName,一个查询姓名showName。利用数组存储姓名。其中addName方法是有参的(需要传入姓名)。 (2)main函数调用addName方法和showName方法

代码:

package edu.lmw;public class Customer {    String [ ]names =new String[30]; //定义一个数组    /*
增加姓名addName的方法
*/
//有参的方法,需要传入增加的姓名
public void addName(String name) {
for (int i=0;i<names.length;i++) {//使用for循环增加用户名字,进行数组遍历
if(names[i]==null) {//如果当前值为空,将传过来的参数赋值给它
names[i]=name; // 把name的值赋值给names[i]
break; //跳出for循环
}
}
}/*
查询显示姓名showName的方法
*/
public void showName() {//需要查询的用户的姓名,不需要返回值
System.out.println("****************");
System.out.println(" 客户姓名列表 ");//为了美观展示内容
System.out.println("****************");
for (int i=0;i<names.length;i++) {//使用for循环查询用户的姓名
if(names[i]!=null) { //如果当前位置不为空值,则输出内容
System.out.println(names[i]); //输出查询用户的姓名
}
}
System.out.println();//输出结果
}/*
修改姓名editName的方法
*/
public boolean editName(String oldName,String newName){//定义了一个布尔类型返回值
boolean find=false;//find赋值
for (int i=0;i<names.length;i++) {//使用for循环数组,根据长度进行数组遍历
if(names[i].equals(oldName)) {//从0下标开始比较,遍历数组,对oldName进行值的比较
names[i]=newName;//如果一样的话就把newName赋值给names[i]
find =true;//find的值赋值为真
break;//跳出循环 }
}
return find;//如果一直没有找到oldName的值,则返回之前的值,修改失败。}}

第二部分:

  • 修改用户姓名,输入新、旧姓名,进行修改并显示会否修改成功。
  • 分析: (1)需要增加一个修改名字的方法,方法中需要传递两个参数,一个是旧名字,一个是新名字 (2)根据旧名字的值去已有列表中查找,如果找到了,进行替换,如果没找到,输出没找到。

 运行截图:

代码:

package edu.lmw;import java.util.Scanner;public class Test {    public static void main(String[] args) {//使用main主函数进行调用
// TODO Auto-generated method stub
Scanner sc =new Scanner(System.in);//创建Customer对象,因为我们要使用它的成员方法和成员变量
//做一个判断 每一次输入后询问是否还要继续
Customer cus=new Customer();//创建Customer对象 boolean flag=true;//有返回值,当返回值为真时,进行while语句
while(flag){
System.out.println("请输入要添加的客户姓名:");//请输入要添加的客户姓名
String addName=sc.next();//比如张三 b==>addName b==>name
cus.addName(addName);//实际参数:实际存在的参数 在调用时需要传递的值
System.out.println("请问还要继续吗?(Y/N)");//判断循环是否继续
String con=sc.next();
if(con.equals("N")){//"N"表示不需要继续添加客户姓名,结束条件
flag=false;//结束返回值
}
}
cus.showName();//显示用户的姓名System.out.println("请输入要修改的用户姓名:");//输出请输入要修改的用户姓名
String oldName=sc.next();//接受键盘输入的oldName,即需要修改的名字
System.out.println("请输入新的用户姓名:");//输出请输入新的用户姓名
String newName=sc.next();//接受键盘输入的newName,修改之后的名字
System.out.println("修改结果......");//输出"修改结果......
if(cus.editName(oldName,newName)){//使用if语句,调用之前oldName,newName的方法
System.out.println("找到并成功修改!");//输出找到并成功修改!
}
else{
System.out.println("并未找到要修改的用户,请检查输入!"); //输出并未找到要修改的用户,请检查输入!
}
cus.showName();//显示新的客户姓名列表
}}

截图:

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,942
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,468
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,281
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,096
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,728
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,765