学生管理系统利用arrayList第二次优化

package StuManage;

public class Student {
 private String name;//姓名
 private String stuNum;//学号
 private String gender;//性别
 private int age;//年龄
 private double score;//分数
 
 public Student(){
  
 }
 //构造方法
 public Student(String name,String stuNum,String gender,int age,double score){
  this.name=name;
  this.stuNum=stuNum;
  this.gender=gender;
  this.age=age;
  this.score=score;
  
 }
 //设置姓名的方法
 public void setName(String name){
  this.name=name;
 }
 //获得名字的方法
 public String getName(){
  return name;
 }
 /**
  * @return the stuNum
  */
 public String getStuNum() {
  return stuNum;
 }
 /**
  * @param stuNum the stuNum to set
  */
 public void setStuNum(String stuNum) {
  this.stuNum = stuNum;
 }
 /**
  * @return the gender
  */
 public String getGender() {
  return gender;
 }
 /**
  * @param gender the gender to set
  */
 public void setGender(String gender) {
  this.gender = gender;
 }
 /**
  * @return the age
  */
 public int getAge() {
  return age;
 }
 /**
  * @param age the age to set
  */
 public void setAge(int age) {
  this.age = age;
 }
 /**
  * @return the score
  */
 public double getScore() {
  return score;
 }
 /**
  * @param score the score to set
  */
 public void setScore(double score) {
  this.score = score;
 }

}

package StuManage;

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

/**
 * 8、需求:制作一个简单的学生信息管理系统,通过键盘选择操作进行
 * 添加学生(学号,姓名,性别,年龄,成绩)的信息,
 * 这些信息通过数组存储,同时还可以进行查询某个或全体学生信息
 * ,修改学生信息,删除学生信息的操作。(要求有一定的优化,例如对用户输入信息是否符合要求的处理)。
 * @author LENOVO
 *
 */
public class StuData {
 ArrayList<Student> alist=new ArrayList<Student>(1000);
 Student stu=new Student();
 /**
  * 添加一个学生的信息的方法
  */
 public void addStu(Student stu){
  for(int i=0;i<alist.size();i++){
   if(stu.getStuNum().equals(alist.get(i).getStuNum())){
   System.out.println("这个学生已经存在,不需要进行添加!\n请您重新选择您要进行的操作~");
   return;
   }
  }
  
  alist.add(stu);
  System.out.println("------------------------您已经成功添加了该学生!--------------------------------");
 }
 /*8
  * 删除一个学生
  */
 public void delStu(String stuNum){
  boolean boo=false;
  int mark =0;
  for(int i=0;i<alist.size();i++){
   mark++;
   if(stuNum==alist.get(i).getStuNum()){
    boo=true;
    break;
   }
  }
  if(boo){
   
   alist.remove(alist.get(mark));
   System.out.println("---------------------您已经成功删除该学生!---------------------");
   
  }else{
   System.out.println("不存在该学生,不用进行删除操作!");
   
  }
  
 }
 /**
  * 改正一个学生的信息
  */
 public void updataStu(String stuNum){
  boolean boo=false;
  int mark =0;
  for(int i=0;i<alist.size();i++){
   mark++;
   if(stuNum==alist.get(i).getStuNum()){
    boo=true;
    break;
   }
  }
  if(boo){
   Scanner scanner=new Scanner(System.in);
   System.out.println("请您输入您要改正的学生的名字:");
   String name2=scanner.next();
   stu.setName(name2);
   System.out.println("请您输入您要改正的学生的学号:");
   String stuNum2 =scanner.next();
   stu.setStuNum(stuNum2);
   System.out.println("请您输入您要改正的学生的性别:");
   String gender2=scanner.next();
   stu.setGender(gender2);
   System.out.println("请您输入您要改正的学生的年龄:");
   int  age2=scanner.nextInt();
   stu.setAge(age2);
   System.out.println("请您输入您要改正的学生的分数:");
   double score2=scanner.nextDouble();
   stu.setScore(score2);
   alist.set(mark ,stu);
   System.out.println("---------------------您已经成功改正该学生!---------------------");
   
  }else{
   System.out.println("不存在该学生,不用进行改正操作!");
   
  }
  
  
 }
 /**
  * 查询学生信息
  */
 public void queryStu(String stuNum){
  boolean boo=false;
  int mark =-1;
  for(int i=0;i<alist.size();i++){
   mark++;
   if(stuNum.equals(alist.get(i).getStuNum())){
    boo=true;
    break;
   }
  }
  if(boo){
   System.out.println("姓名:"+alist.get(mark).getName());
   System.out.println("学号:"+alist.get(mark).getStuNum());
   System.out.println("性别:"+alist.get(mark).getGender());
   System.out.println("年龄:"+alist.get(mark).getAge());
   System.out.println("分数:"+alist.get(mark).getName());
   
   System.out.println("---------------------查询结束---------------------");
   
  }else{
   System.out.println("不存在该学生!");
   
  }
  
  
 }
}

package StuManage;

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

/**
 * 8、需求:制作一个简单的学生信息管理系统,通过键盘选择操作进行
 * 添加学生(学号,姓名,性别,年龄,成绩)的信息,
 * 这些信息通过数组存储,同时还可以进行查询某个或全体学生信息
 * ,修改学生信息,删除学生信息的操作。(要求有一定的优化,例如对用户输入信息是否符合要求的处理)。
 * @author LENOVO
 *
 */
public class StuData {
 ArrayList<Student> alist=new ArrayList<Student>(1000);
 Student stu=new Student();
 /**
  * 添加一个学生的信息的方法
  */
 public void addStu(Student stu){
  for(int i=0;i<alist.size();i++){
   if(stu.getStuNum().equals(alist.get(i).getStuNum())){
   System.out.println("这个学生已经存在,不需要进行添加!\n请您重新选择您要进行的操作~");
   return;
   }
  }
  
  alist.add(stu);
  System.out.println("------------------------您已经成功添加了该学生!--------------------------------");
 }
 /*8
  * 删除一个学生
  */
 public void delStu(String stuNum){
  boolean boo=false;
  int mark =0;
  for(int i=0;i<alist.size();i++){
   mark++;
   if(stuNum==alist.get(i).getStuNum()){
    boo=true;
    break;
   }
  }
  if(boo){
   
   alist.remove(alist.get(mark));
   System.out.println("---------------------您已经成功删除该学生!---------------------");
   
  }else{
   System.out.println("不存在该学生,不用进行删除操作!");
   
  }
  
 }
 /**
  * 改正一个学生的信息
  */
 public void updataStu(String stuNum){
  boolean boo=false;
  int mark =0;
  for(int i=0;i<alist.size();i++){
   mark++;
   if(stuNum==alist.get(i).getStuNum()){
    boo=true;
    break;
   }
  }
  if(boo){
   Scanner scanner=new Scanner(System.in);
   System.out.println("请您输入您要改正的学生的名字:");
   String name2=scanner.next();
   stu.setName(name2);
   System.out.println("请您输入您要改正的学生的学号:");
   String stuNum2 =scanner.next();
   stu.setStuNum(stuNum2);
   System.out.println("请您输入您要改正的学生的性别:");
   String gender2=scanner.next();
   stu.setGender(gender2);
   System.out.println("请您输入您要改正的学生的年龄:");
   int  age2=scanner.nextInt();
   stu.setAge(age2);
   System.out.println("请您输入您要改正的学生的分数:");
   double score2=scanner.nextDouble();
   stu.setScore(score2);
   alist.set(mark ,stu);
   System.out.println("---------------------您已经成功改正该学生!---------------------");
   
  }else{
   System.out.println("不存在该学生,不用进行改正操作!");
   
  }
  
  
 }
 /**
  * 查询学生信息
  */
 public void queryStu(String stuNum){
  boolean boo=false;
  int mark =-1;
  for(int i=0;i<alist.size();i++){
   mark++;
   if(stuNum.equals(alist.get(i).getStuNum())){
    boo=true;
    break;
   }
  }
  if(boo){
   System.out.println("姓名:"+alist.get(mark).getName());
   System.out.println("学号:"+alist.get(mark).getStuNum());
   System.out.println("性别:"+alist.get(mark).getGender());
   System.out.println("年龄:"+alist.get(mark).getAge());
   System.out.println("分数:"+alist.get(mark).getName());
   
   System.out.println("---------------------查询结束---------------------");
   
  }else{
   System.out.println("不存在该学生!");
   
  }
  
  
 }
}

package StuManage;

import java.util.Scanner;

public class Main {

public static void main(String[] args) {
  StuService stus=new StuService();
  while(true){
   System.out.println("--------------------欢迎进入学生管理系统--------------------------");
   System.out.println("1:输入学生信息");
   System.out.println("2:修改学生信息");
   System.out.println("3:删除学生信息");
   System.out.println("4:查询学生信息");
   System.out.println("0:退出系统");
   System.out.println("-----------请输入选项----------------");
   
   
   Scanner scanner=new Scanner(System.in);
   int a=scanner.nextInt();
   
   if(a==0){
    System.out.println("******************退出系统***************************");
    System.exit(0);
   }
   else{
    stus.main(a);
   }

}
 }
}

时间: 2024-12-19 21:50:07

学生管理系统利用arrayList第二次优化的相关文章

学生管理系统利用网页较为成熟的优化。。。

基础的web页面 1 <?xml version="1.0" encoding="ISO-8859-1"?> 2 3 <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" 4 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 5 xsi:schemaLocation="http://xmlns

学生管理系统——ArrayList集合

此学生管理系统利用了集合ArrayList实现了对学生的增删改查:利用数组中的方法实现分数排序:运用String类的equals实现登录功能的字符串比较. 管理员类: package data; public class Manger { private String Manname; private String Manpassword; public Manger(String Manname, String Manpassword) { this.Manname = Manname; th

c语言学生管理系统链表(dev vs2012下可以运行)

struct student { char name[10]; char sex[5]; long int num;//学号 int xuhao; int age; float score[3]; float averange; char DJ;//存放等级哦 struct student *next; };//定义结构体变量保存 名字 性别 年龄 成绩] 结构体声明 int n;//存放学生人数 int man;//存放统计的男生数 float JY(float a)//校验成绩使范围0-10

精美学生管理系统

半个学期即将完美结束,精美的学生管理系统也终于亮相啦,哈哈! 话不多说,切入正题. 首先,要了解完成学生管理系统的步骤: 总共有几个模块,我就逐一讲解: 一:完成登录页面模块 判断“登录”是否成功的代码: 1 private void btnLogin_Click(object sender, EventArgs e) 2 { 3 string str = DBHelper.str; 4 SqlConnection con = new SqlConnection(str); 5 string s

简单的学生管理系统

简单的学生管理系统 一,主要功能: 1,添加学生信息: 2,添加的学生信息显示在线型布局中: 3,把学生信息保存在xml文件中: 4,把保存在mxl中的学生信息取出来解析显示在界面: 二,主要知识点: 1,layout_weight的使用: 2,pull解析xml文件,xml序列化: 3,保存数据到sd卡: 4,动态添加控件刷新界面: 三,界面原型如下图: 四,代码展示: 1,界面xml文件,activity_main.xml <LinearLayout xmlns:android="ht

Servlet实例开发---学生管理系统

Servlet总结 本程序采用Servlet开发技术,MVC分层,所有程序在设计时都要接口为操作的标准,主要逻辑操作只有增删改查. 具体实现操作请看源代码. 本程序采用的是MYSQL数据库,需加入相应的jar包 目录结构 首先贴上底层数据层: 连接数据库 package com.student.dbc ; import java.sql.* ; public class DatabaseConnection { private static final String DBDRIVER = "or

Java 图形界面开发--图文并茂建立学生管理系统

图形用户界面(Graphics User Interface,GUI)是用户与程序交互的窗口,比命令行的界面更加直观并且更好操作. 这是本人在学习java图形界面开发阶段一步一步实现的超级简易的学生管理系统.虽然说不入大神法眼,但这确实是费了自己不少心血.对于我这样的菜鸟来说,考虑不周到,一不小心就Exception,然后就是自己调呀调.在此分享出来希望对和我一样的菜鸟有帮助. 程序完整代码下载地址见: https://github.com/chaohuangtianjie994/The-Sys

【IOS开发笔记02】学生管理系统

端到端的机会 虽然现在身处大公司,但是因为是内部创业团队,产品.native.前端.服务器端全部坐在一起开发,大家很容易做零距离交流,也因为最近内部有一个前端要转岗过来,于是手里的前端任务好像可以抛一大坨出去了,这个时候立刻想到了切入IOS开发!!! 事实上,前端开发做到一定时间,要进步很难了,最近几个月扑到业务上便感觉突破不了目前的瓶颈,自身的前端瓶颈主要在两方面:技术深度.技术广度 其实不论深度或者广度来说都不是简单前端能说清楚的事情,不能说了解了angularJS.react等框架技术深度

链表+文件 一个初学者实现学生管理系统的心得

其实,用链表与文件写学生管理系统内容可分为两大模块: 模块一:一个完整的创建.遍历.添加.删除.修改的链表: 模块二:读取/写入数据到文件. 模块一 一个链表,主要是malloc的正确使用. 定义一个带有结构指针的结构体,用malloc()动态开辟一个该结构体大小的内存用来作为节点,储存多个平行数据并且每动态开辟一个内存就要用这个内存里面的结构指针指向下一个开辟的内存(如果停止动态开辟内存,则需让这个指针指向NULL,作为Programmer都知道指针的潜在危险).这个节点数量需用循环控制.ma