简单完整的学生管理系统

学生类

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;
}
}

学生管理类

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. [杭电新生赛]hgame-week1-web-wp

    hgame第一周总结 (官方wp更加简洁明了.直入主题,个人比较菜,所以过程繁琐 写好了一直没发qwq(就是懒(bushi) 一.Tetris plus! 题目里说玩到3000分就给flag,还真有点 ...

  2. 3、Linux基础--cp、mv、rm、alias、vi/vim命令

    笔记 1.考试 1.判断网络是否通畅的命令 ping 2.定义系统提示组成的变量 PS1 3.Linux中目录从什么开始 根(/) 4.系统中目录路径类型有哪些,解释一下 绝对路径:以根目录作为参照物 ...

  3. 自学linux(常用命令)STEP3

    tty tty 可以查看当前处于哪一个系统中. 比如我在图形化界面输入 tty: alt+ctrl+F3切换到命令行: linux命令 linux命令,一般都是 命令+选项+参数,这种格式,为了防止选 ...

  4. nginx负载均衡中利用redis解决session一致性问题

    关于session一致性的现象及原因不是本小作文的重点,可以另行找杜丽娘O(∩_∩)O哈哈~重点是利用redis集中存储共享session的实际操作. 一.业务场景:nginx/tomcat/redi ...

  5. Tomcat是什么?

    Tomcat简单的说就是一个运行JAVA的网络服务器,底层是Socket的一个程序,它也是JSP和Serlvet的一个容器. 为什么我们需要用到Tomcat 如果你学过html,css,你会知道你写的 ...

  6. Python小游戏之 - 飞机大战 !

    用Python写的"飞机大战"小游戏 源代码如下: # coding=utf-8 import random import os import pygame # 用一个常量来存储屏 ...

  7. BI平台能做什么,有哪些功能呢?

    ​相信接触过数据分析工作的小伙伴们,对BI平台并不陌生.BI(Business Intelligence),也就是商业智能,它是一个完整的解决方案,可以有效地整合企业中的现有数据.BI通常被理解为将企 ...

  8. 【C# .Net GC】sos.dll 混合模式调试(托管调试+本机)

    当我们想使用本机调试器(如CDB或WinDBG)调试.NET应用程序时,我们必须在本机调试器和托管世界之间使用"桥",因为本机调试器本身并不理解托管代码.它是本机调试器.为了提供这 ...

  9. C# Semaphore 信号量 锁 简单理解

    信号量(Semaphore) Semaphore 一般译作 信号量,它也是一种线程同步工具,主要用于多个线程对共享资源进行并行操作的一种工具类.它代表了一种许可的概念,是否允许多线程对同一资源进行操作 ...

  10. linux系统挂载磁盘

    linux系统挂载磁盘 ## 将硬盘挂载到/mnt/disk1下 # 检查磁盘状态,确认分区 fdisk -l # 格式化磁盘(分区) mkfs.ext4 /dev/sda #根据机器上的命名 以sd ...