java对象数组实现学生信息管理系统

Java对象数组实现学生信息管理系统攻略

在Java中,我们可以使用对象数组来实现一个学生信息管理系统。我们可以将学生信息作为一个对象,使用对象数组来存储多个学生的信息。下面是实现学生信息管理系统的完整攻略。

1. 定义学生信息类

我们首先需要定义一个学生信息类,用于存储学生的信息,包括姓名、年龄、性别、学号等。以下是一个示例:

public class Student {
  private String name;
  private int age;
  private String gender;
  private String id;

  // 构造函数
  public Student(String name, int age, String gender, String id) {
    this.name = name;
    this.age = age;
    this.gender = gender;
    this.id = id;
  }

  // getter和setter方法
  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }
  public int getAge() {
    return age;
  }
  public void setAge(int age) {
    this.age = age;
  }
  public String getGender() {
    return gender;
  }
  public void setGender(String gender) {
    this.gender = gender;
  }
  public String getId() {
    return id;
  }
  public void setId(String id) {
    this.id = id;
  }
}

2. 创建学生信息数组

接下来,我们需要创建一个学生信息数组,用于存储多个学生的信息。以下是一个示例:

public class Main {
  public static void main(String[] args) {
    Student[] students = new Student[3];
    students[0] = new Student("张三", 18, "男", "20191001");
    students[1] = new Student("李四", 19, "女", "20191002");
    students[2] = new Student("王五", 20, "男", "20191003");
  }
}

在上面的示例中,我们创建了一个包含3个学生信息的数组,并初始化了每个学生的信息。

3. 实现学生信息的增删改查功能

现在我们已经创建了一个学生信息数组,接下来我们需要实现学生信息的增删改查功能。以下是一个示例:

import java.util.Scanner;

public class Main {
  public static void main(String[] args) {
    Student[] students = new Student[3];
    students[0] = new Student("张三", 18, "男", "20191001");
    students[1] = new Student("李四", 19, "女", "20191002");
    students[2] = new Student("王五", 20, "男", "20191003");

    Scanner scanner = new Scanner(System.in);

    while (true) {
      System.out.println("请选择要进行的操作:");
      System.out.println("1. 查询学生信息");
      System.out.println("2. 添加学生信息");
      System.out.println("3. 修改学生信息");
      System.out.println("4. 删除学生信息");
      System.out.println("5. 退出程序");

      int choice = scanner.nextInt();

      if (choice == 1) {
        System.out.println("请输入要查询的学号:");
        String id = scanner.next();
        boolean found = false;
        for (Student student : students) {
          if (student.getId().equals(id)) {
            System.out.println("姓名:" + student.getName());
            System.out.println("年龄:" + student.getAge());
            System.out.println("性别:" + student.getGender());
            System.out.println("学号:" + student.getId());
            found = true;
            break;
          }
        }
        if (!found) {
          System.out.println("未找到学号为" + id + "的学生信息");
        }
      } else if (choice == 2) {
        System.out.println("请输入学生姓名:");
        String name = scanner.next();
        System.out.println("请输入学生年龄:");
        int age = scanner.nextInt();
        System.out.println("请输入学生性别:");
        String gender = scanner.next();
        System.out.println("请输入学生学号:");
        String id = scanner.next();
        Student newStudent = new Student(name, age, gender, id);
        for (int i = 0; i < students.length; i++) {
          if (students[i] == null) {
            students[i] = newStudent;
            System.out.println("添加成功!");
            break;
          }
        }
      } else if (choice == 3) {
        System.out.println("请输入要修改的学生学号:");
        String id = scanner.next();
        boolean found = false;
        for (int i = 0; i < students.length; i++) {
          if (students[i].getId().equals(id)) {
            System.out.println("请输入新的学生姓名:");
            String name = scanner.next();
            System.out.println("请输入新的学生年龄:");
            int age = scanner.nextInt();
            System.out.println("请输入新的学生性别:");
            String gender = scanner.next();
            Student newStudent = new Student(name, age, gender, id);
            students[i] = newStudent;
            System.out.println("修改成功!");
            found = true;
            break;
          }
        }
        if (!found) {
          System.out.println("未找到学号为" + id + "的学生信息");
        }
      } else if (choice == 4) {
        System.out.println("请输入要删除的学生学号:");
        String id = scanner.next();
        boolean found = false;
        for (int i = 0; i < students.length; i++) {
          if (students[i].getId().equals(id)) {
            students[i] = null;
            System.out.println("删除成功!");
            found = true;
            break;
          }
        }
        if (!found) {
          System.out.println("未找到学号为" + id + "的学生信息");
        }
      } else if (choice == 5) {
        break;
      } else {
        System.out.println("无效的操作,请重新输入!");
      }
    }
  }
}

在上面的示例中,我们使用了Scanner类来获取用户在控制台上输入的操作选项和学生信息。我们使用了一个while循环来持续询问用户的操作选项,直到用户选择退出程序为止。

示例说明

以下是两条关于该学生信息管理系统的示例说明:

  1. 添加新学生

用户选择添加学生信息操作,依次输入学生姓名、年龄、性别和学号,程序将根据用户输入创建一个新的学生信息对象,并将其添加到学生信息数组中。例如:

请输入要进行的操作:
1. 查询学生信息
2. 添加学生信息
3. 修改学生信息
4. 删除学生信息
5. 退出程序
2
请输入学生姓名:
赵六
请输入学生年龄:
20
请输入学生性别:
男
请输入学生学号:
20191004
添加成功!
  1. 删除学生

用户选择删除学生信息操作,输入要删除的学生学号,程序将在学生信息数组中查找并删除对应的学生信息对象。例如:

请输入要进行的操作:
1. 查询学生信息
2. 添加学生信息
3. 修改学生信息
4. 删除学生信息
5. 退出程序
4
请输入要删除的学生学号:
20191002
删除成功!

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java对象数组实现学生信息管理系统 - Python技术站

(0)
上一篇 2023年5月24日
下一篇 2023年5月24日

相关文章

  • 十一、JSP及语法概要

    JSP(JavaServer Pages)是一个让用户可以在HTML网页内嵌入Java代码的技术。JSP技术在Web应用开发中得到了广泛的应用。本文将详细讲解JSP的语法概要和特点。 JSP的特点 JSP是基于Java技术的,因此具有良好的跨平台性。 JSP技术允许在HTML文档中插入Java代码,大大方便了Web应用程序的开发。 JSP支持自定义标签库的开…

    Java 2023年6月15日
    00
  • jsp servlet javaBean后台分页实例代码解析

    环境搭建 首先需要安装java开发环境,以及一个支持jsp、servlet开发的IDE,比如Eclipse、IntelliJ IDEA等。接下来创建一个web应用程序,将jsp、servlet等文件放在该应用程序的WEB-INF目录下。 数据库设计 在实现分页之前,需要准备好数据表。这里以用户表为例,设立以下字段信息:id – 用户idname – 用户名a…

    Java 2023年6月15日
    00
  • Java包机制及javadoc详解

    下面是“Java包机制及javadoc详解”的完整攻略。 一、Java包机制 Java中的包(Package)是将相关的类组成的一种单元,它的作用就是解决了相同类名的问题,也方便了其他开发人员的使用。在Java中,每一个类都必须属于一个包,没有包名的类默认属于默认包。 1.1 包的定义 我们可以使用package关键字定义一个包,它必须放在类定义之前。语法格…

    Java 2023年5月20日
    00
  • java将String字符串转换为List类型实例方法

    这里是将String字符串转换为List类型实例方法的详细攻略。 第一步:导入Java的util库 import java.util.*; 第二步:定义一个静态方法将String字符串转化为List public static List<Long> convertStringToList(String inputString) { List&lt…

    Java 2023年5月26日
    00
  • 我掏空了各大搜索引擎,给你整理了154道Java面试题

    我掏空了各大搜索引擎,给你整理了154道Java面试题攻略 背景 在准备Java岗位面试时,我们都会遇到这样一个问题:面试官会问哪些问题?不知道答案会不会出糗? 面对这种情况,我们不妨多花时间学习和整理Java面试题,加强自己的面试准备。 收集与整理 为了找到优质的Java面试题,我们可以从各大搜索引擎如Google、Bing、百度等中搜索相关内容。一些技术…

    Java 2023年5月20日
    00
  • java 两阶段终止线程的正确做法

    Java中线程的终止一直是个比较重要的话题,如果终止线程不当,可能会导致内存泄漏、死循环等问题。本文将详细介绍Java中两阶段终止线程的正确做法,并且提供两个示例进行说明。 什么是两阶段终止模式 两阶段终止模式是指在终止线程时采用两个阶段的方式进行终止,第一阶段发送一个中断信号以告诉线程需要终止,第二阶段等待线程终止。 两阶段终止模式的主要原理是,在第一阶段…

    Java 2023年5月19日
    00
  • Spring MVC请求参数的深入解析

    下面是 “Spring MVC请求参数的深入解析”的完整攻略。 一、背景 Spring MVC是目前最流行的web开发框架之一,它采用了MVC设计模式,能够很好地将数据模型(Model)、视图(View)和控制器(Controller)分离。在Spring MVC开发中,我们经常需要从用户发起的HTTP请求中获取请求参数,然后进行相应的业务逻辑处理。那么,如…

    Java 2023年5月16日
    00
  • jsp从数据库获取数据填充下拉框实现二级联动菜单的方法

    下面是详细的“jsp从数据库获取数据填充下拉框实现二级联动菜单的方法”攻略。 第一步:创建数据表 首先,我们需要创建一个数据表,用于存储下拉菜单中的选项值和对应的子选项值。例如,我们可以创建一个名为“options”的表,它包含以下字段: optionId:选项的ID optionName:选项的名称 subOptionId:子选项的ID subOption…

    Java 2023年6月15日
    00
合作推广
合作推广
分享本页
返回顶部