java修改客户姓名_求能人解答使用JAVA的类和对象,循环输入客户姓名,然后修改客户姓名并显示,...

展开全部

我觉得题主是事先定义了一个固定长度的数组,但是向数组里添62616964757a686964616fe58685e5aeb931333335343361加对象的数量却小于数组的长度,所以在按index进行比较时会出现NullPointerException。我建议题主改用一个HashSet,这样名单的长度就是灵活的了。另外showName方法我不知道题主为何不直接调用this.name而需要另提供一个参数name,因此我也稍作了改动。我修改的版本如下:import java.util.HashSet;

import java.util.Scanner;

public class CustomerBiz2 {

HashSet name = new HashSet(); // 输入客户姓名的数组长度

public HashSet addName() {

Scanner scan = new Scanner(System.in);

boolean condition; // 是否继续输入的布尔类型

int i = 0;

do {

System.out.print("请输入客户的姓名:");

this.name.add(scan.next());

System.out.print("继续输入吗?(y/n):");

String choose = scan.next(); // 输入是否继续

if ("y".equals(choose)) {

condition = true;

} else {

condition = false;

}

i++;

} while (condition);

return this.name;

}

// 显示输入的客户姓名

public void showName() {

System.out.println("\n\t\t客户姓名列表");

for (String names : this.name) {

System.out.print(names + "\t");

}

}

// 修改用户名

public void updateName() {

Scanner scan = new Scanner(System.in);

System.out.print("\n请输入要修改的客户姓名:");

String oldName = scan.next();

boolean found = false;

for (String names : this.name) {

if (names.equals(oldName)) {

System.out.print("\n请输入新的客户名:");

String newName = scan.next();

this.name.remove(oldName);

this.name.add(newName);

found = true;

System.out.println("\n\t\t找到结果并修改成功!");

break;

}

}

if (!found)

System.out.println("未找到结果,修改失败");

}

public static void main(String[] args) {

CustomerBiz2 test = new CustomerBiz2();

test.addName();

test.showName();

test.updateName();

test.showName();

}

}

运行main方法的例子:

修改成功:请输入客户的姓名:a

继续输入吗?(y/n):y

请输入客户的姓名:b

继续输入吗?(y/n):y

请输入客户的姓名:c

继续输入吗?(y/n):n

客户姓名列表

abc

请输入要修改的客户姓名:a

请输入新的客户名:asd

找到结果并修改成功!

客户姓名列表

bcasd

修改失败:请输入客户的姓名:a

继续输入吗?(y/n):y

请输入客户的姓名:b

继续输入吗?(y/n):y

请输入客户的姓名:c

继续输入吗?(y/n):n

客户姓名列表

abc

请输入要修改的客户姓名:d

未找到结果,修改失败

客户姓名列表

abc

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
java.lang.ClassNotFoundException: org.springframework.data.redis.connection.SubscriptionListener是一个Java异常,表示在运行时找不到指定的类。这通常是由于缺少相关的依赖库或配置问题引起的。 解决这个问题的方法有以下几种: 1. 确保依赖库存在:检查项目的依赖配置文件(如pom.xml或build.gradle)中是否包含了正确的spring-data-redis依赖。如果没有添加或者版本不正确,可以手动添加或更新依赖。 2. 检查类路径:确保项目的类路径中包含了所需的类。可以检查项目的构建配置,例如Maven或Gradle的配置文件,确保正确地包含了相关的类路径。 3. 检查包名和类名:确认类的包名和类名是否正确。有时候,类名可能会被错误地拼写或者包名可能会被错误地配置,导致找不到类的异常。 4. 检查版本兼容性:如果项目中使用的是较新的spring-data-redis版本,而你的代码或配置文件中使用的是较旧的类或方法,可能会导致找不到类的异常。确保使用的类和方法与所使用的版本兼容。 5. 检查项目的配置文件:如果项目中使用了配置文件(如application.properties或application.yml),请确保配置文件中的相关配置项正确且完整。 6. 检查项目的部署环境:如果你的项目是部署在服务器上的,确保服务器上已经正确安装了所需的依赖库,并且类路径正确配置。 这些方法中的一种或多种可能会解决java.lang.ClassNotFoundException: org.springframework.data.redis.connection.SubscriptionListener异常。如果问题仍然存在,请提供更多的上下文信息,以便我能够更好地帮助你解决问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值