学生信息管理系统运用集合且存储本地磁盘Word下载.docx

上传人:b****5 文档编号:16254476 上传时间:2022-11-22 格式:DOCX 页数:13 大小:34.05KB
下载 相关 举报
学生信息管理系统运用集合且存储本地磁盘Word下载.docx_第1页
第1页 / 共13页
学生信息管理系统运用集合且存储本地磁盘Word下载.docx_第2页
第2页 / 共13页
学生信息管理系统运用集合且存储本地磁盘Word下载.docx_第3页
第3页 / 共13页
学生信息管理系统运用集合且存储本地磁盘Word下载.docx_第4页
第4页 / 共13页
学生信息管理系统运用集合且存储本地磁盘Word下载.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

学生信息管理系统运用集合且存储本地磁盘Word下载.docx

《学生信息管理系统运用集合且存储本地磁盘Word下载.docx》由会员分享,可在线阅读,更多相关《学生信息管理系统运用集合且存储本地磁盘Word下载.docx(13页珍藏版)》请在冰豆网上搜索。

学生信息管理系统运用集合且存储本地磁盘Word下载.docx

dis();

while(true){

Stringin=input.next();

switch(in){

case"

1"

:

addStuMess();

break;

2"

showStuMess();

break;

3"

changStudentMess();

4"

delStudentMess();

5"

findStuMess();

6"

savaDate();

System.out.println("

退出程序成功!

"

);

System.exit(0);

default:

输入错误,请选择1~6!

dis();

}

}

}

publicstaticvoidaddStuMess(){

Stringflag="

y"

;

do{

booleanisInt=true,isYN=true;

Scannerinput=newScanner(System.in);

Studentstu=newStudent(null,null,0,null);

//随意设定初始值,不影响程序,只为了创建对象,类型对应即可

System.out.println("

请输入学生的学号"

stu.setNo(in);

for(StudenthadStu:

message){

if(hadStu.getNo().equals(in)){

System.out.println("

已存在该学生,不能重复添加"

dis();

return;

}

请输入学生的"

stu.setName(input.next());

请输入学生的年龄"

//对于年龄为整数的异常处理

while(isInt){

ScannerintInput=newScanner(System.in);

try{

isInt=false;

intintAge=intInput.nextInt();

if(intAge>

150||intAge<

=0){

年龄必须大于0小于150"

isInt=true;

continue;

stu.setAge(intAge);

}catch(Exceptione){

isInt=true;

年龄必须为整数类型,且大于0小于150"

请输入学生的性别,男性输入boy,其余任意键为女性"

if(input.next().equals("

boy"

)){

stu.setGender("

男"

}else{

女"

message.add(stu);

//System.out.println("

message.size()"

+message.size());

//调试时使用

是否继续输入?

y/n"

flag=input.next();

//对是否继续输入的选择做异常处理

while(isYN){

if(flag.equals("

)||flag.equals("

n"

isYN=false;

else{

请选择y或n"

flag=input.next();

if(flag.equals("

dis();

break;

}while(flag.equals("

));

publicstaticvoidshowStuMess(){

if(message.size()==0){

学生信息为空,请先添加学生信息"

}else{

学号\t\t年龄\t性别"

for(Studentmsg:

System.out.println(msg.getNo()+"

\t"

+msg.getName()+"

+msg.getAge()+"

+msg.getGender());

publicstaticvoidchangStudentMess(){

学生信息库为空,您无法进行该项操作"

dis();

return;

System.out.println("

请输入您要修改的"

Stringin=input.next();

Iterator<

it=message.iterator();

//构建迭代器

while(it.hasNext()){

StudentstuMess=it.next();

if(stuMess.getNo().equals(in)){

aa:

while(true){

booleanisInt=true;

请选择你要修改的信息:

1、学号2、3、年龄4、性别5、【保存】"

Stringtype=input.next();

//修改容选项

switch(type){

case"

booleanflag=true;

学号修改为:

//修改学号时,原则是不能出现相同的学号

while(flag){

StringisHad=input.next();

for(StudenthadStu:

if(hadStu.getNo().equals(isHad)){

System.out.println("

flag=true;

break;

}else{

flag=false;

}

}

if(flag==false){

stuMess.setNo(isHad);

System.out.println("

学号修改成功..."

}

}

break;

System.out.println("

修改为:

stuMess.setName(input.next());

修改成功..."

年龄修改为:

//对于年龄为整数的异常处理

while(isInt){

ScannerintInput=newScanner(System.in);

try{

isInt=false;

intintAge=intInput.nextInt();

if(intAge>

isInt=true;

continue;

stuMess.setAge(intAge);

System.out.println("

年龄修改成功..."

}catch(Exceptione){

isInt=true;

性别修改为:

(男性输入boy,其余任意键为女性)"

if(input.next().equals("

stuMess.setGender("

}else{

性别修改成功..."

学生信息更新已保存"

dis();

breakaa;

default:

输入错误,请重新输入!

}

return;

对不起,没有找到该学生信息"

publicstaticvoiddelStudentMess(){

请输入您要删除的"

message.remove(stuMess);

删除该学生信息成功..."

publicstaticvoidfindStuMess(){

学生信息库为空,请先添加学生信息"

请输入您要查找的"

该学生信息如下:

System.out.println(stuMess.getNo()+"

+stuMess.getName()+"

+stuMess.getAge()+"

+stuMess.getGender());

删除失败,没有该学生信息..."

publicstaticvoidsavaDate(){

try(

ObjectOutputStreamoos=newObjectOutputStream(newFileOutputStream("

IoObjOutputListStuMess.dat"

//file路径可根据实际需要来改

{

oos.writeObject(message);

//对象应用的序列化:

直接将Student对象存入message集合中

}catch(FileNotFoundExceptione){

//e.printStackTrace();

}catch(IOExceptione){

e.printStackTrace();

publicstaticvoidinitDate(){

ObjectInputStreamois=newObjectInputStream(newFileInputStream("

){

message=(ArrayList<

)ois.readObject();

}catch(ClassNotFoundExceptione){

-------首次加载,请添加学生信息!

------"

staticvoiddis(){

********欢迎使用学生信息管理系统**********"

System.out.println("

|1、增加一个学生|"

|2、显示所有学生|"

|3、修改学生信息|"

|4、删除学生信息|"

|5、查找学生|"

|6、退出程序|"

|(请选择1~6)|"

*************************************"

}

}

classStudentimplementsSerializable{//实现Serializable接口,该类就是可序列化的

privateStringno,name,gender;

privateintage;

publicStringgetNo(){

returnno;

publicvoidsetNo(Stringno){

this.no=no;

publicStringgetName(){

returnname;

publicvoidsetName(Stringname){

this.name=name;

publicintgetAge(){

returnage;

publicvoidsetAge(intage){

this.age=age;

publicStringgetGender(){

returngender;

publicvoidsetGender(Stringgender){

this.gender=gender;

publicStudent(){}//无参构造器

publicStudent(Stringno,Stringname,intage,Stringgender){

//super();

Override

publicStringtoString(){

return"

Student[no="

+no+"

name="

+name+"

gender="

+gender+"

age="

+age+"

]"

;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 动态背景

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1