遍历数组按学号找人,若找到则输出信息,否则输出查无此人

2023-11-02 06:10

本文主要是介绍遍历数组按学号找人,若找到则输出信息,否则输出查无此人,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  1. //建立一个类类型的数组,并向这个数组内添加学生信息,包括姓名和年龄等
  2. **********************学生类**************************
  3. package practise03_1;
  4. public class Student {
  5. private String name;
  6. private int age;
  7. public String getName() {
  8. return name;
  9. }
  10. public void setName(String name) {
  11. this.name = name;
  12. }
  13. public int getAge() {
  14. return age;
  15. }
  16. public void setAge(int age) {
  17. this.age = age;
  18. }
  19. }
  20. **************************功能类************************
  21. package practise03_1;
  22. import java.util.Scanner;
  23. public class BookDAO {
  24. Student[] a=new Student[2];
  25. Scanner sc=new Scanner(System.in);
  26. //添加学生信息
  27. public int addStudent(Student stu){
  28. for(int i=0;i<a.length;i++){
  29. System.out.println("请输入第"+(i+1)+"个学生的名字、年龄:");
  30. a[i]=new Student();//实例化一个对象,并赋值给a[i]
  31. String n =sc.next();
  32. a[i].setName(n);
  33. //System.out.println("请输入第"+(i+1)+"个学生的年龄:");
  34. int age = sc.nextInt();
  35. a[i].setAge(age);
  36. }
  37. for(int i=0;i<a.length;i++){
  38. System.out.println("第"+(i+1)+"个学生信息为:"+a[i].getName()+" "+a[i].getAge()+"岁");
  39. }
  40. return 0;
  41. }
  42. //根据名字查找
  43. public Student findName(String name){
  44. int k=0;//定义一个标记
  45. System.out.println("请输入要查询的学生的姓名:");
  46. String b=sc.next();
  47. for(int i=0;i<a.length;i++){
  48. if(a[i].getName().equals(b)){
  49. System.out.println("该学生的年龄是:"+a[i].getAge()+"岁");
  50. k=1;  //此处做一个标记,记录循环的执行情况
  51. break;
  52. }
  53. // else{
  54. // System.out.println("查无此人");
  55. // // break; //这儿出问题,如果第一次没查到,直接就会break,跳出循环了,后面的就查不到了
  56. // } //那么问题来了,循环内部不能判断值不一致,真查不到的时候,该如何实现输出“查无此人”呢?
  57. }
  58. //解决办法是转嫁危机,把值传出去,既然内部不能判断值不一致,至少可以判断值一致的情况,在判断值一致时顺便做个记号,一致时记号改变
  59. //然后在循环外部判断这个记号,如果记号不变,说明整个循环过程都没有找到值一致的情况,这时候就可以在循环外部输出“查无此人”了
  60. if(k!=1){ //利用标记情况,在循环外部做判断
  61. System.out.println("查无此人");
  62. }
  63. return null;
  64. }
  65. }
  66. ****************************主类****************************
  67. package practise03_1;
  68. public class Test3_1 {
  69. public static void main(String[] args) {
  70. BookDAO b=new BookDAO();
  71. Student stu=new Student();
  72. b.addStudent(stu);
  73. b.findName("xiaomao");
  74. }
  75. }

转载于:https://www.cnblogs.com/yangyi9343/p/java.html

这篇关于遍历数组按学号找人,若找到则输出信息,否则输出查无此人的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/328659

相关文章

一文详解如何使用Java获取PDF页面信息

《一文详解如何使用Java获取PDF页面信息》了解PDF页面属性是我们在处理文档、内容提取、打印设置或页面重组等任务时不可或缺的一环,下面我们就来看看如何使用Java语言获取这些信息吧... 目录引言一、安装和引入PDF处理库引入依赖二、获取 PDF 页数三、获取页面尺寸(宽高)四、获取页面旋转角度五、判断

Java中读取YAML文件配置信息常见问题及解决方法

《Java中读取YAML文件配置信息常见问题及解决方法》:本文主要介绍Java中读取YAML文件配置信息常见问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录1 使用Spring Boot的@ConfigurationProperties2. 使用@Valu

Java中的数组与集合基本用法详解

《Java中的数组与集合基本用法详解》本文介绍了Java数组和集合框架的基础知识,数组部分涵盖了一维、二维及多维数组的声明、初始化、访问与遍历方法,以及Arrays类的常用操作,对Java数组与集合相... 目录一、Java数组基础1.1 数组结构概述1.2 一维数组1.2.1 声明与初始化1.2.2 访问

在Linux中改变echo输出颜色的实现方法

《在Linux中改变echo输出颜色的实现方法》在Linux系统的命令行环境下,为了使输出信息更加清晰、突出,便于用户快速识别和区分不同类型的信息,常常需要改变echo命令的输出颜色,所以本文给大家介... 目python录在linux中改变echo输出颜色的方法技术背景实现步骤使用ANSI转义码使用tpu

MySQL查询JSON数组字段包含特定字符串的方法

《MySQL查询JSON数组字段包含特定字符串的方法》在MySQL数据库中,当某个字段存储的是JSON数组,需要查询数组中包含特定字符串的记录时传统的LIKE语句无法直接使用,下面小编就为大家介绍两种... 目录问题背景解决方案对比1. 精确匹配方案(推荐)2. 模糊匹配方案参数化查询示例使用场景建议性能优

关于集合与数组转换实现方法

《关于集合与数组转换实现方法》:本文主要介绍关于集合与数组转换实现方法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、Arrays.asList()1.1、方法作用1.2、内部实现1.3、修改元素的影响1.4、注意事项2、list.toArray()2.1、方

python3如何找到字典的下标index、获取list中指定元素的位置索引

《python3如何找到字典的下标index、获取list中指定元素的位置索引》:本文主要介绍python3如何找到字典的下标index、获取list中指定元素的位置索引问题,具有很好的参考价值,... 目录enumerate()找到字典的下标 index获取list中指定元素的位置索引总结enumerat

MySQL存储过程之循环遍历查询的结果集详解

《MySQL存储过程之循环遍历查询的结果集详解》:本文主要介绍MySQL存储过程之循环遍历查询的结果集,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言1. 表结构2. 存储过程3. 关于存储过程的SQL补充总结前言近来碰到这样一个问题:在生产上导入的数据发现

MySQL JSON 查询中的对象与数组技巧及查询示例

《MySQLJSON查询中的对象与数组技巧及查询示例》MySQL中JSON对象和JSON数组查询的详细介绍及带有WHERE条件的查询示例,本文给大家介绍的非常详细,mysqljson查询示例相关知... 目录jsON 对象查询1. JSON_CONTAINS2. JSON_EXTRACT3. JSON_TA

Linux查看系统盘和SSD盘的容量、型号及挂载信息的方法

《Linux查看系统盘和SSD盘的容量、型号及挂载信息的方法》在Linux系统中,管理磁盘设备和分区是日常运维工作的重要部分,而lsblk命令是一个强大的工具,它用于列出系统中的块设备(blockde... 目录1. 查看所有磁盘的物理信息方法 1:使用 lsblk(推荐)方法 2:使用 fdisk -l(