1903021137—赵舞艳—Java第七周作业—客户类测试
项目 | 内容 |
课程班级博客链接 | 19级信计班(本) |
这个作业要求链接 | Java第七周作业 |
博客名称 | 1903021137—赵舞艳—Java第七周作业—客户类测试 |
要求 | 每道题要有题目,代码(使用插入代码,不会插入代码的自己查资料解决,不要直接截图代码!!),截图(只截运行结果)。 |
第一部分:
-
创建客户业务类,实现客户姓名的添加和显示。
- 分析: (1)Customer类中需要两个方法,一个增加姓名addName,一个查询姓名showName。利用数组存储姓名。其中addName方法是有参的(需要传入姓名)。 (2)main函数调用addName方法和showName方法
第二部分:
- 修改用户姓名,输入新、旧姓名,进行修改并显示会否修改成功。
- 分析: (1)需要增加一个修改名字的方法,方法中需要传递两个参数,一个是旧名字,一个是新名字 (2)根据旧名字的值去已有列表中查找,如果找到了,进行替换,如果没找到,输出没找到。
运行截图:
方法代码:
1 package week07; 2 3 public class Pupu { 4 //定义了一个数组 5 String []names = new String[3]; 6 /** 7 * 增加姓名 8 * @param name 输入的名字 9 */ 10 //有参的方法,需要传入增加的姓名 11 public void addName(String name){ 12 for(int i=0;i<names.length;i++){//使用for循环增加用户名字 13 if(names[i]==null){//如果当前值为空的话,将传过来的参数赋值给他 14 names[i]=name;// 把name的值赋值给names[i] 15 break; 16 } 17 } 18 } 19 /** 20 * 显示姓名 21 */ 22 public void showNames(){//需要查询的用户的姓名,不需要返回值 23 System.out.println("****************"); 24 System.out.println("客户姓名列表"); 25 System.out.println("****************"); 26 for(int i=0;i<names.length;i++){//使用for循环查询用户的姓名 27 if(names[i]!=null){//如果当前位置不为空值,则输出内容 28 System.out.print(names[i]+" "); 29 } 30 } 31 System.out.println(); 32 } 33 /** 34 * 修改姓名 35 */ 36 public boolean editName(String oldName,String newName){//定义了一个布尔类型返回值 37 boolean find = false; 38 for(int i=0;i<names.length;i++){//使用for循环数组,根据长度进行数组遍历 39 if(names[i].equals(oldName)){//从0下标开始比较,遍历数组,对oldName进行值的比较 40 names[i] = newName;//如果一样的话就把newName赋值给names[i] 41 find = true; 42 break; 43 } 44 } 45 return find;//如果一直没有找到oldName的值,则返回之前的值,修改失败。 46 } 47 }
运行代码:
1 package week07; 2 3 import java.util.Scanner; 4 5 public class Biubiu { 6 7 public static void main(String[] args) { 8 // TODO Auto-generated method stub 9 Scanner sc = new Scanner(System.in); 10 Pupu p = new Pupu();//创建一个Customers对象,因为我们要使用它的成员方法和成员变量 11 /** 12 * 做一个判断,每一次输入完后询问是否还要继续输入 13 */ 14 boolean flag = true;//有返回值,当返回值为真时,进行while语句 15 while(flag){ 16 System.out.print("请输入要添加的客户姓名:"); 17 String addedName = sc.next(); 18 p.addName(addedName);//实际参数:实际存在的参数 在调用时需要传递的值 19 System.out.print("继续输入吗?(y/n)"); 20 String con = sc.next(); 21 if(con.equals("n")){ 22 flag = false; 23 } 24 } 25 p.showNames(); 26 System.out.println("请输入要修改的用户姓名:"); 27 String oldName = sc.next(); 28 System.out.println("请输入新的用户姓名:"); 29 String newName = sc.next(); 30 System.out.println("修改结果..."); 31 if(p.editName(oldName, newName)){//使用if语句,调用之前oldName,newName的方法 32 System.out.println("找到并且成功修改!"); 33 }else{ 34 System.out.println("并未找到要修改的用户!请检查输入!"); 35 } 36 p.showNames(); 37 } 38 }
截图: