java类与对象 演练 查找并修改姓名

视频

https://www.ixigua.com/i6870489659168784903/

思路

先定义一个类

类中有一个名字数组

提前给这个数组一些默认值,用于直接搜索和替换,简化流程

类的定义

public class CustomerBiz {// 姓名数组
//    String[] nameArray = new String[29];String[] nameArray = {"黄忠", "关羽", "张飞", "赵云", "马超"};/*** 查找出替换*/public void replace() {}

查找与替换的思路

方法的功能

查找,如果查到了就进行替换

如果查不到,就不能替换

方法的参数

查什么?

替换为什么?

方法要运行需要这两个参数

用户尽管提供

方法的逻辑

得到查询词

拿着这个词在数组中一个一个的比对,看能否找到

如果找到了,获取数据中这个一样的词,的下标

然后可以根据下标,给数组[下标] 重新赋值

查到了就替换

查汪到就不替换

对于目标下标的操作

如果找到了,得到一个下标

如果找不到,让这个下标值为-1

我们只需要判定下标是否为-1

即可断定要查的词是否成功找到

实现了查找功能后

删掉多出的代码

测试一下查找

只要搜的词不在数组中

res_idx就是负值

因此

我们可以考虑

如果

res_idx值为正值

那么就表示查到了

那么就可以替换了

否则

就表示没查到

就无法实现替换

小结查找与替换

  • 拿着搜索的词,在数组中一个一个的比对
  • 如果比对到了有相同的值,就获取下标
  • 有了下标就可以给数组赋值

代码

类的代码

public class CustomerBiz {// 姓名数组
//    String[] nameArray = new String[29];String[] nameArray = {"黄忠", "关羽", "张飞", "赵云", "马超"};/*** 查找出替换* 参数一:查询关键词。* 参数二:替换为什么。*/public void replace(String oldName, String newName) {// 初始下标int res_idx = -1;// 遍历查找for (int i = 0; i < nameArray.length; i++) {// 拿着oldName的词和下标对应的值比对if (oldName == nameArray[i]) {res_idx = i;// 找到了就可以不用继续往后找了,可节约性能,避免不必要的多余的遍历查找工作break;}}System.out.println("最终获取目标下标:" + res_idx);// 查到替换,查不到什么也不做if (res_idx >= 0) {nameArray[res_idx] = newName;} else {System.out.println("你要查的内容不存在,无法替换");}}/*** 显示所有姓名*/public void showNames() {System.out.println("开始打印数组名单了。。。。。。。");System.out.println("***********************");System.out.println("\t\t客户姓名列表:");System.out.println("***********************");for (int i = 0; i < nameArray.length; i++) {// 如果值为null,那就不输出if (nameArray[i] == null) {continue;}System.out.print(nameArray[i]);System.out.print("\t");}}/*** 添加姓名*/public void addName(String name) {System.out.println("收到传来的参数:" + name);// 遍历数组的下标,找到值为null的位置,把name值塞进去,然后就停止找别的位置for (int i = 0; i < nameArray.length; i++) {if (nameArray[i] == null) {nameArray[i] = name;break;}}System.out.println("名字记录成功");}
}

测试文件代码

public class Test {public static void main(String[] args) {// 实例化管理员类Manager host = new Manager();// 实例化Game类Game g = new Game();g.showLoginMenu();}
}

java类与对象 演练 查找并修改姓名相关推荐

  1. java类与对象 演练 客户姓名添加与查看

    java类与对象 演练 客户姓名添加与查看 视频 https://www.ixigua.com/6870483106223096327?logTag=_YUmIb2rn9-6JpoNipj9r 类的定 ...

  2. java客户姓名添加和查找_java类与对象 演练 客户姓名添加与查看

    java类与对象 演练 客户姓名添加与查看 java类与对象 演练 客户姓名添加与查看 https://www.ixigua.com/6870483106223096327?logTag=_YUmIb ...

  3. 从Java类到对象的创建过程都做了些啥?内存中的对象是啥样的?

    转载自   从Java类到对象的创建过程都做了些啥?内存中的对象是啥样的? 先回顾一下Java程序执行的过程: Java程序执行时,第一步系统创建虚拟机进程,然后虚拟器用类加载器Class Loade ...

  4. 解析 Java 类和对象的初始化过程

    跳转到主要内容 中国 [ 选择 ] dW 全部内容--------------  AIX and UNIX  Info Mgmt  Lotus  Rational  WebSphere-------- ...

  5. java类与对象实验_JAVA类与对象实验报告

    <JAVA类与对象实验报告>由会员分享,可在线阅读,更多相关<JAVA类与对象实验报告(6页珍藏版)>请在人人文库网上搜索. 1.面向对象程序设计实验报告实验三.类与对象(1) ...

  6. 杨校老师课堂之Java类与对象、封装、构造方法

    杨校老师课堂之Java类与对象.封装.构造方法 本篇文章内容如下: 面向对象 类与对象 三大特征--封装 构造方法 教学目标 能够理解面向对象的思想 能够明确类与对象关系 能够掌握类的定义格式 能够掌 ...

  7. java 类与对象实验报告_java类与对象实验报告

    java类与对象实验报告 西 安 邮 电 大 学(计算机学院)课内实验报告实验名称: 类与对象 专业名称: 计算机科学与技术班 级: 计科1405班 学生姓名: 高宏伟 学 号: 04141152指导 ...

  8. 实验2 Java类和对象的设计

    实验题目:Java类和对象的设计 一.上机目的和要求 理解面向对象的编程思想.类与对象的概念: 加深理解封装性.继承性和多态性: 掌握this.super.final.static等关键字的使用: 掌 ...

  9. java 类与对象、封装、构造方法

    java 类与对象.封装.构造方法 面向对象 类与对象 三大特征--封装 构造方法 第1章 面向对象思想 1.1 面向对象思想概述 概述 Java语言是一种面向对象的程序设计语言,而面向对象思想是一种 ...

最新文章

  1. java如何读写json文件
  2. 微软披露拓扑量子计算机计划!
  3. 【吾日三省吾身】2015.5.24-涅槃行动第六天
  4. JQuery动态执行javascript代码的方法
  5. 【网址收藏】如何设置node.js存储路径:node缓存、数据目录
  6. php语句结束标记,PHP结束标记“?”
  7. python问题分享_零基础入门Python常见问题分享
  8. linux 文件系统路径,Linux编程 1 (文件系统路径说明, 目录结构说明)
  9. mysql mvcc实例讲解_轻松理解MYSQL MVCC 实现机制
  10. 链表的简单操作-----删除,添加,查找(Xcode)
  11. Java虚拟机(JVM)(自动内存管理机制)
  12. Tensorflow分布式机器学习平台
  13. MATLAB风玫瑰图WindRose绘制记录(已知风的u、v分量如何计算风向。)
  14. 第二章、Magick命令组合多个图像处理操作
  15. CodeForces 592C (胡搞)
  16. banner图片自适应
  17. 吃猕猴桃,当然不不不不能错过贵州的啦
  18. 汉字转拼音工具JPinyin的介绍和使用示例
  19. (转)Windows 7 系统下载安装一贴导航
  20. 神经网络激活函数及其Katex公式代码模板合集

热门文章

  1. [结构力学] 铰结三角形规律中虚铰也记为单铰
  2. 中序线索树和后序线索树
  3. IDEA和mysql的连接
  4. MCMS 基于SpringBoot 2架构
  5. java中国象棋网络对弈,java课程设计---中国象棋对弈系统
  6. Bootstrap圣诞节主题商城网站模板
  7. 2021年广东副高考试成绩查询,广东省中山市2021年高级会计师考试成绩可以查询了吗?...
  8. 代码提交本地代码和远程代码不同步问题(笔记)
  9. HTML只言片语网站导航模板
  10. Rtworld目录网全解开源2.0-功能齐全