1903021135-张蝶-Java第七周作业——客户类测试

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

本周作业为课上写过的练习,我把代码发到群里,理解后自己练习,编译并调试,为每一行写上注释。

第一部分:

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

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

第二部分:

修改用户姓名,输入新、旧姓名,进行修改并显示会否修改成功。修改用户姓名,输入新、旧姓名,进行修改并显示会否修改成功。

分析: (1)需要增加一个修改名字的方法,方法中需要传递两个参数,一个是旧名字,一个是新名字 (2)根据旧名字的值去已有列表中查找,如果找到了,进行替换,如果没找到,输出没找到。分析: (1)需要增加一个修改名字的方法,方法中需要传递两个参数,一个是旧名字,一个是新名字 (2)根据旧名字的值去已有列表中查找,如果找到了,进行替换,如果没找到,输出没找到。
运行截图:

image

方法部分代码:

`package edu.xj.msweek07;

public class Customer {

/**
*
*@author Administrator
* 实现客户姓名显示和增加
*/
String []names = new String[30];//定义了一个数组,其数组长度为30
/**
* 这是增加用户名的方法
* @param name 输入的名字
*/
public void addName(String name){//添加姓名
for(int i=0;i<names.length;i++){//使用for循环来增加用户名字
if(names[i]==null){//如果names[i]为空,把name赋给names[i]
names[i]=name;//将name的值赋值给name[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();//输出结果
}
/**
 * 这是修改姓名的方法
 * @param oldName
 * @param newName
 * @return
 */
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)){//遍历数组,对oldName进行值得比较
	names[i] = newName;//如果找到了要修改的名字,则将newName的值赋给它
	find = true;//find的赋值为真
	break;//结束循环
	}
	}
	return find;//如果未找到要修改的名字,则返回之前的值
	}

}
`

主函数代码:

`package edu.xj.msweek07;

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();
	}
	
}

`

运行结果截图:

image

posted @ 2022-04-16 14:23  Ω明我长^_^相忆  阅读(27)  评论(0编辑  收藏  举报