1903021132—杨思然—Java第七周作业—客户类测试

项目 内容
课程班级博客链接 19级信计班(本)
这个作业要求链接 JAVA第七周作业
博客名称 1903021132—杨思然—Java第七周作业—客户类测试
要求 每道题要有题目,代码(使用插入代码,不会插入代码的自己查资料解决,不要直接截图代码!!),截图(只截运行结果)。

第一部分:

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

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

第二部分:

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

 运行截图:

运行代码:

package edu.xj.week07;

public class Customer {
	String []names = new String[30];//定义了一个数组
	/*
	 * 添加用户姓名的方法
	 */
	public void addName(String name) {//有参的方法需要传入要增加的姓名
		for(int i = 0 ;i<names.length;i++) {//遍历数组
			if(names[i]==null) {
				names[i] = name;//将添加的名字存入到数组name[i]中
				break;
			}
			
		}
			
	}/*
	查询用户姓名的方法
	*/
	public void showNames() {
		System.out.println("***************");
		System.out.println("****客户姓名列表***");
		System.out.println("***************");//美观
		for (int i = 0 ;i<names.length;i++) {
			if (names[i]!=null) {
				System.out.print(names[i]+" ");//用for循环遍历数组,如果nmae[i]不为空,就把name[i]输出
			}
			
		}
        System.out.print();
	}
	/*
	 * 修改用户姓名的方法
	 */
	public boolean editName(String oldName,String newName) {//定义了一个布尔类型的返回值
		boolean find = false;
		for (int i = 0 ;i<names.length;i++) {
			if(names[i].equals(oldName)) {//从0下标开始比较,遍历数组,对oldName进行值的比较
			names[i]=newName;//把旧的名字用新的名字替换
			find = true;
			break;//把find改为true,跳出循环
			}
		}
		return find;//如果一直没有找到oldName的值,则返回之前的值,修改失败。
	    
	}
	
			
	
		
	}

主函数:

package edu.xj.week07;

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();//创建Customer对象,因为我们要使用它的成员方法和变量
		for(int i=0;i<5;i++){ //用循环输入五个用户姓名
			System.out.println("请输入用户姓名:"); //提示用户输入姓名
			String newName = sc.next(); //接收从键盘输入的用户姓名
			cus.addName(newName);//调用添加用户姓名的方法
		}
	cus.showNames();//调用查询用户姓名的方法,把输入的名字列表输出
	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.showNames();//显示新的客户姓名列表
	}

}

运行截图:

posted @ 2022-04-17 12:03  ysr0101  阅读(22)  评论(0编辑  收藏  举报