学生管理系统利用arrayList第二次优化
Posted 郑州大学计算机李银霞
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学生管理系统利用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);
}
}
}
}
以上是关于学生管理系统利用arrayList第二次优化的主要内容,如果未能解决你的问题,请参考以下文章