1903021126 申文骏 Java 第七周作业 客户类测试

 项目  内容
课程班级博客链接 19级信计班(本)
作业要求链接 Java 第七周作业
博客名称 1903021126  申文骏  Java 第七周作业  客户类测试
要求

每道题要有题目,代码(使用插入代码,不会插入代码的自己查资料解决,不要直接截图代码!!),截图(只截运行结果)。

 

 

第一部分:

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

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

第二部分:

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

 运行截图:

 

第一部分代码: 

package edu.xj.work;

public class Customer {
    //定义数组
    
    String [] names = new String[3];
    /**
     * 增加姓名的方法
     * @param name
     */
    //
    public  void addName(String name) {
        // TODO Auto-generated method stub
        
        for(int i=0;i<names.length;i++){//使用for循环增加用户名字
            
            if(names[i]==null){//如果当前值为空的话,将传过来的参数赋值给他
            
            names[i]=name;// 把name的值赋值给names[i]
            
            break;//结束循环
                }
            }
        }
            /**
            * 显示姓名
            */
            public void showNames(){//显示用户的姓名
            
                System.out.println("****************");
            
                System.out.println("客户姓名列表");
            
                System.out.println("****************");
            
                for(int i=0;i<names.length;i++){//使用for循环查询用户的姓名
            
                    if(names[i]!=null){//如果当前位置不为空值,则输出内容
            
                System.out.print(names[i]+" ");//输出客户列表
                
                    }
            }
            
                System.out.println();//输出结果
            }
            /**
             * 修改姓名方法
             */
            public boolean editName(String oldName,String newName){//定义了一个布尔类型返回值
                
                boolean find = false;
                
                for(int i=0;i<names.length;i++){//使用for循环遍历数组找到需要修改的名字
                
                    if(names[i].equals(oldName)){//遍历数组,对oldName进行值的比较
                
                        names[i] = newName;//找到要修改的名字就把newName赋值给names[i]
                
                        find = true;//find 赋值为真
                
                        break;//结束循环
                    }
                }
                return find;//如果一直没有找到oldName的值,则返回之前的值

    }

}

 

第二部分代码:

 package edu.xj.work;

import java.util.Scanner;

public class Testcustomer {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        
        Scanner sc = new Scanner(System.in);
        
        Customer cus = new Customer();//创建一个Customers对象,因为我们要使用它的成员方法和成员变量
        
        /**
        * 做一个判断,每一次输入完后询问是否还要继续输入
        */
        
        boolean flag = true;//有返回值,当返回值为真时,进行while语句
        
        while(flag) {
        
            System.out.print("请输入要添加的客户姓名:");
        
            String addedName = sc.next();
        
            cus.addName(addedName);//实际参数:实际存在的参数  在调用时需要传递的值
        
            System.out.print("继续输入吗?(y/n)");
        
            String con = sc.next();
        
            if(con.equals("n")){
        
                flag = false;
                }
            }
        
        cus.showNames();
        
        System.out.println("请输入要修改的用户姓名:");
        
        String oldName = sc.next();
        
        System.out.println("请输入新的用户姓名:");
        
        String newName = sc.next();
        
        System.out.println("修改结果...");
        
        if(cus.editName(oldName, newName)){//使用if语句,调用之前oldName,newName的方法
        
            System.out.println("找到并且成功修改!");
        }
        else {
        
            System.out.println("并未找到要修改的用户!请检查输入!");
        }
        
        cus.showNames();
    }

}




    

 

截图:

 

 

posted @ 2022-04-17 16:56  枫豆  阅读(6)  评论(0编辑  收藏  举报