学生管理系统利用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("这个学生已经存在,不需要进行添加! 请您重新选择您要进行的操作~");
   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("这个学生已经存在,不需要进行添加! 请您重新选择您要进行的操作~");
   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);
   }

  }
 }
}

原文地址:https://www.cnblogs.com/lyxcode/p/7308113.html