简单完整的学生管理系统

学生类

  1. public class Student {
    private String id;
    private String age;
    private String name;
    private String address;
    public Student(){};//无参构造方法
    public Student(String name,String age,String id,String address){//有参构造方法
    this.id=id;
    this.name=name;
    this.address=address;
    this.age=age;
    //get/set方法

    }

    public String getId() {
    return id;
    }

    public void setId(String id) {
    this.id = id;
    }

    public String getAge() {
    return age;
    }

    public void setAge(String age) {
    this.age = age;
    }

    public String getName() {
    return name;
    }

    public void setName(String name) {
    this.name = name;
    }

    public String getAddress() {
    return address;
    }

    public void setAddress(String address) {
    this.address = address;
    }
    }
  1.  

学生管理类

  1. package StudentMannerger;

    import java.util.ArrayList;
    import java.util.Scanner;

    /*案例:简单的学生管理系统
    *
    * */
    public class StudentManager {
    public static void main(String[] args) {
    //创建集合对象
    ArrayList<Student> arr=new ArrayList<Student>();
    boolean flag=true;
    while (flag) {
    System.out.println("----------学生管理系统----------");
    System.out.println("1 新增学生");
    System.out.println("2 删除学生");
    System.out.println("3 修改学生");
    System.out.println("4 查看所有学生");
    System.out.println("5 退出");
    System.out.println("请输入您所要进行的操作:");
    //创建Scanner对象
    Scanner sc = new Scanner(System.in);
    int choose = sc.nextInt();
    switch (choose) {
    case 1:
    addStudent(arr);
    System.out.println("添加学生成功");
    break;
    case 2:
    deleteStudent(arr);
    break;
    case 3:
    updateStudent(arr);
    break;
    case 4:
    selectStudent(arr);
    break;

    case 5:
    System.out.println("5 退出");
    flag=false;
    break;

    }
    }

    }
    //定义方法添加学生的方法
    public static void addStudent(ArrayList<Student> array){
    //创建scanner对象

    Scanner sc = new Scanner(System.in);
    String id;
    while(true) {
    System.out.println("请输入学生id");
    id = sc.nextLine();
    boolean f = isId(array, id);
    if (f) {
    System.out.println("已占用");
    } else {
    break;
    }
    }

    System.out.println("请输入学生姓名");
    String name = sc.nextLine();
    System.out.println("请输入学生年龄");
    String age = sc.nextLine();
    System.out.println("请输入学生地址");
    String address = sc.nextLine();
    //创建学生对象
    Student s = new Student();
    s.setId(id);
    s.setAddress(address);
    s.setName(name);
    s.setAge(age);
    array.add(s);
    }

    // System.out.println(arr);

    //定义方法查看学生的方法
    public static void selectStudent(ArrayList<Student> array){
    if (array.size()==0){
    System.out.println("表中没有数据");
    return;
    }
    System.out.println("id\t"+"姓名\t"+"性别\t"+"\t地址");
    System.out.println("-----------------------------");
    //使用arr.get方法进行遍历元素
    for (int i=0;i<array.size();i++){
    //Student s=new Student();

    Student s=array.get(i);
    System.out.println(s.getId()+"\t"+s.getName()+"\t"+s.getAge()+"岁\t"+s.getAddress());
    }
    System.out.println("-----------------------------");
    System.out.println("查看成功");
    }
    //定义方法删除学生
    public static void deleteStudent(ArrayList<Student>array){
    Scanner sc=new Scanner(System.in);
    System.out.println("请输入要删除的学生id");
    String id=sc.nextLine();
    int index =-1;
    for (int i=0;i<array.size();i++){
    Student s=array.get(i);
    if (s.getId().equals(id)){
    index=i;
    break;
    }
    }
    if (index==-1){
    System.out.println("没有查到该人");

    }else
    {
    array.remove(index);
    System.out.println("删除成功");

    }
    // for (int i=0;i<array.size();i++){
    // Student s=array.get(i);
    // if (s.getId().equals(id)){
    // array.remove(i);
    // System.out.println("删除成功");
    // }else
    // System.out.println("没有查询到该学生");
    // }

    }
    //定义方法修改学生信息
    public static void updateStudent(ArrayList<Student>array){
    Scanner sc=new Scanner(System.in);
    System.out.println("请输入您要修改的学生的id");
    String id=sc.nextLine();
    System.out.println("请输入学生的新姓名");
    String name=sc.nextLine();
    System.out.println("请输入学生的新年龄");
    String age=sc.nextLine();
    System.out.println("请输入学生的新地址");
    String address=sc.nextLine();
    Student s=new Student();
    s.setId(id);
    s.setName(name);
    s.setAge(age);
    s.setAddress(address);
    for (int i=0;i<array.size();i++){
    Student s1=array.get(i);
    if (s1.getId().equals(id)){
    array.set(i,s);
    System.out.println("修改成功");
    }else
    System.out.println("没有找到该人");
    }

    }
    //定义防止学号重复的方法
    public static boolean isId(ArrayList<Student>array,String id){
    boolean flag=false;
    for (int i=0;i<array.size();i++){
    Student s= array.get(i);
    if (s.getId().equals(id)){
    flag=true;
    break;
    }
    }
    return flag;
    }
    }

Java案例——学生管理系统的更多相关文章

  1. EL&Filter&Listener:EL表达式和JSTL,Servlet规范中的过滤器,Servlet规范中的监听器,观察着设计模式,监听器的使用,综合案例学生管理系统

    EL&Filter&Listener-授课 1 EL表达式和JSTL 1.1 EL表达式 1.1.1 EL表达式介绍 *** EL(Expression Language):表达式语言 ...

  2. java构建学生管理系统(一)

    用java搭建学生管理系统,重要还是对数据库的操作,诸如增删改查等. 1.基本的功能: 老师完成对学生信息的查看和修改,完成对班级的信息的概览. 学生可以看自己的成绩和对自己信息的修改. 学生和老师有 ...

  3. Java+Mysql+学生管理系统

    最近正在学java和数据库,想起以前写的学生管理系统,都是从网上下载,敷衍了事.闲来无事,也就自己写了一个,不过功能实现的不是很多. 开发语言:java: 开发环境:Mysql, java: 开发工具 ...

  4. Java 简化版学生管理系统(IO版)

    Student management system   学生管理系统IO版 详细知识点可参考一下几篇文章 常用API Java 之ArrayList集合及应用 Java 之IO流及应用 Compreh ...

  5. Mybatis高级:Mybatis注解开发单表操作,Mybatis注解开发多表操作,构建sql语句,综合案例学生管理系统使用接口注解方式优化

    知识点梳理 课堂讲义 一.Mybatis注解开发单表操作 *** 1.1 MyBatis的常用注解 之前我们在Mapper映射文件中编写的sql语句已经各种配置,其实是比较麻烦的 而这几年来注解开发越 ...

  6. Java 小型学生管理系统心得

    这个学生管理系统相对来说比较简单,主要就是复习下java怎么连接数据库,然后你怎么来实现这个功能,我简单的说下思路吧. 首先你要构思好这个界面,他包括增删查改这些基本功能,然后你去分析这些功能都能怎么 ...

  7. Java开发学生管理系统

    Java 学生管理系统 使用JDBC了链接本地MySQL 数据库,因此在没有建立好数据库的情况下没法成功运行 (数据库部分, Java界面部分, JDBC部分) 资源下载: http://downlo ...

  8. Java写学生管理系统

    package Homework08;/*调试了一上午,收获:学会了昨天的debug的使用吸取教训:Student stus[]=new Student[2]; for (int i=0;i<s ...

  9. java集合学生管理系统

    //student.java package com.sran.www; import java.util.Arrays; import java.util.Scanner; public class ...

随机推荐

  1. LNMP平台的redis对接安装

    LNMP平台的redis对接安装 目录 LNMP平台的redis对接安装 一.安装LNMP的各个组件 二.安装redis服务 三.安装redis扩展 四.修改php配置文件 五.测试连接 一.安装LN ...

  2. Solution -「LOCAL」解析电车

    \(\mathcal{Description}\)   给定 \(n\) 个点 \(m\) 条边的无向图,每条边形如 \((u,v,r)\),表示 \(u,v\) 之间有一条阻值为 \(r\Omega ...

  3. Gateway 简介

    概述 微服务可能分布在不同的主机上,这样有许多缺点:前端需要硬编码调用不同地址的微服务很麻烦:存在跨域访问的问题:微服务地址直接暴露是不安全的.还有所以需要为前端提供一个统一的访问入口.Gateway ...

  4. nginx 配置ssl证书

    1.443端口配置 server { listen 443 ssl; server_name www.test.com; ssl_certificate /usr/local/nginx/cert/t ...

  5. mysql 去除前后空白字符

    update  table  set  field = replace(replace(replace(field,char(9),''),char(10),''),char(13),'');

  6. python中try...excpet多种使用方法

    1 print('\n欢迎使用除法计算器!\n') 2 3 while True: 4 try: 5 x = input('请你输入被除数:') 6 y = input('请你输入除数:') 7 z ...

  7. 攻防世界之Web_php_unserialize

    题目: <?php class Demo {     private $file = 'index.php';    public function __construct($file) {   ...

  8. 《Java编程思想》学习笔记(详细)

    目录 01 对象导论 02 一切都是对象 03 操作符 04 控制执行流程 05 初始化与清理 06 访问权限控制 07 复用类(继承) 08 多态 09 接口 10 内部类 11 持有对象 12 通 ...

  9. C# 方法里面的默认参数

    最近有很多地方都用到了方法的默认参数,遂总结之. (一)先从原理说起 在C#中,一旦为某个参数分配了一个默认值,编译器就会向内部该参数应用定制一个attribute 即是(OptionalAttrib ...

  10. (转)oracle 数据库性能健康检查脚本

    转至:https://blog.csdn.net/cm_0205/article/details/100210526?utm_medium=distribute.pc_relevant_downloa ...