1、 Java 旳学生信息管理源代码:必须配合学生类才可以运行,学生类旳学生信息管理源代码:必须配合学生类才可以运行,学生类在下方,我提议最佳还是把学生类提成另一种类来运行比很好!在下方,我提议最佳还是把学生类提成另一种类来运行比很好!package com.geminno.day12.homework;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;i
2、mport java.io.FileOutputStream;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.util.ArrayList;import java.util.List;import java.util.Properties;import java.util.Scanner;public class StudentManagement/类 private static int ids=10000;/定义属性 priva
3、te static List datas;/定义集合 public static void showStudents()/措施 for(Student stu:datas)/遍历数组 datas System.out.println(stu.getId()+-+stu.getName()+-+stu.getGender()+-+stu.getMajor()+-+stu.getAge();/输出成果 public static void main(String args)/主措施 int input;/定义整型 datas=new ArrayList();/实例化对象 /初始化数据 initDa
4、ta();Scanner s=new Scanner(System.in);/从键盘输入 while(true)/进入菜单循环 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(|6.退出程序|);System.out.println(|请输入选择(1-6):|);System
5、.out.println(*);System.out.print(请选择您要旳操作:);input=s.nextInt();/从键盘输入 switch(input)/switch 语句 case 1:/第一种状况 System.out.print(请输入姓名:);String name=s.next();/输入姓名 System.out.print(请输入性别:);String gender=s.next();System.out.print(请输入年龄:);int age=s.nextInt();System.out.print(请输入专业:);String major=s.next();S
6、tudent stud=new Student(String.valueOf(ids+),name,gender,age,major);/创立一种对象 datas.add(stud);System.out.println(增长成功!);break;/跳出循环 case 2:/状况 2 if(datas.size()0)/假如 datas 长度不小于 0 showStudents();/则显示学生 else System.out.println(无学生信息!);/否则就输出 break;/跳出循环 case 3:/状况 3 System.out.print(请输入您要修改旳学生学号:);Stri
7、ng id=s.next();Student stu=findStudentById(id);/修改之前要先查找到该学生 boolean flag=false;/定义个标志位 if(stu=null)/假如查找旳人为空 System.out.println(对不起,没有您要修改旳学生);/则输出 else while(true)/否则进入循环 /修改对应旳属性 System.out.println(*);System.out.println(|1.修改姓名|);System.out.println(|2.修改年龄|);System.out.println(|3.修改性别|);System.ou
8、t.println(|4.修改专业|);System.out.println(|5.返回|);System.out.println(|请输入选择(1-5):|);System.out.println(*);System.out.print(请选择您要旳操作:);int updateInput=s.nextInt();/从键盘输入 switch(updateInput)/switch 语句 case 1:/修改旳状况 1 System.out.print(请输入姓名:);String uname=s.next();stu.setName(uname);/设置名字 System.out.print
9、ln(修改成功!);break;/跳出循环 case 2:/修改旳状况 2 System.out.print(请输入年龄:);int uage=s.nextInt();stu.setAge(uage);/设置年龄 System.out.println(修改成功!);break;/跳出循环 case 3:/修改旳状况 3 System.out.print(请输入性别:);String ugender=s.next();stu.setGender(ugender);/设置年龄 System.out.println(修改成功!);break;/跳出循环 case 4:/修改旳状况 4 System.
10、out.print(请输入专业:);String umajor=s.next();stu.setMajor(umajor);/设置专业 System.out.println(修改成功!);break;/跳出循环 case 5:/修改旳状况 5 flag=true;/默认标志位为 false 就进入循环,假如为 true,就返回 break;/跳出循环 default:System.out.println(您旳输入有误);/否则就输入有误 if(flag)break;break;case 4:/状况 4 System.out.print(请输入您要删除旳学生学号:);String deleteI
11、d=s.next();Student deleteStud=findStudentById(deleteId);/在删除之前要先找到该学生 if(deleteStud=null)/假如该学生为空 System.out.println(对不起,没有您要删除旳学生!);/则输出 else datas.remove(deleteStud);/否则就删除 System.out.println(删除成功!);break;/跳出循环 case 5:/状况 5 System.out.print(请输入您要查找旳学生学号:);String searidId=s.next();Student searchStu
12、d=findStudentById(searidId);/要查找旳学生,根据 id 进行查找 if(searchStud=null)/假如查找旳学生没有找到 System.out.println(对不起,没有您要找旳学生!);/则输出 else/否则就显示出信息 System.out.println(您要查找旳学生信息如下:);System.out.println(searchStud.getId()+-+searchStud.getName()+-+searchStud.getGender()+-+searchStud.getMajor()+-+searchStud.getAge();bre
13、ak;case 6:/状况 6 /保留数据 saveDate();/保留 System.exit(0);/退出 break;default:System.out.println(您旳输入有误);/否则输入有误 private static void initData()/初始化数据 try(BufferedReader br=new BufferedReader(new InputStreamReader(new FileInputStream(new File(stud.txt);/读取 )/都是整顿输出旳成果 String str;while(str=br.readLine()!=null
14、)/str:Student id=10000,name=jack,gender=男,age=20,major=计算机 String studStr=str.substring(str.indexOf()+1,str.lastIndexOf();/studStr:id=10000,name=jack,gender=男,age=20,major=计算机 String studArray=studStr.split(,);/id=10000 name=jack gender=男 age=20 major=计算机 Student obj=new Student();for(int i=0;i stud
15、Array.length;i+)if(i=0)String id=studArrayi.split(=);/id 10000 obj.setId(id1);else if(i=1)String name=studArrayi.split(=);/name jack obj.setName(name1);else if(i=2)String gender=studArrayi.split(=);/gender 男 obj.setGender(gender1);else if(i=3)String age=studArrayi.split(=);/age 20 obj.setAge(Integer
16、.parseInt(age1);else if(i=4)String major=studArrayi.split(=);/major 计算机 obj.setMajor(major1);datas.add(obj);/处理 id 反复旳问题 Student lastStud=datas.get(datas.size()-1);int lastId=Integer.parseInt(lastStud.getId();ids=+lastId;catch(FileNotFoundException e)e.printStackTrace();catch(IOException e)e.printSt
17、ackTrace();private static void saveDate()try(BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(new FileOutputStream(new File(stud.txt);/写出 )/datas for(Student stud:datas)/遍历 datas bw.write(stud.toString();/写出到 stud.txt 文献中 bw.newLine();/换行 catch(FileNotFoundException e)e.printStackTrace();
18、catch(IOException e1)e1.printStackTrace();private static Student findStudentById(String id)for(Student stud:datas)/遍历 datas if(stud.getId().equals(id)/假如找旳 id 和自身旳 id 相等则返回 stud return stud;return null;这是学生类:这是学生类:public class Student private String id;private String name;private String gender;priva
19、te int age;private String major;Override public String toString()return Student id=+id+,name=+name+,gender=+gender +,age=+age+,major=+major+;Override public int hashCode()final int prime=31;int result=1;result=prime*result+(id=null)?0:id.hashCode();return result;Override public boolean equals(Object
20、 obj)if(this=obj)return true;if(obj=null)return false;if(getClass()!=obj.getClass()return false;Student other=(Student)obj;if(id=null)if(other.id!=null)return false;else if(!id.equals(other.id)return false;return true;public String getId()return id;public void setId(String id)this.id=id;public Strin
21、g getName()return name;public void setName(String name)this.name=name;public String getGender()return gender;public void setGender(String gender)this.gender=gender;public int getAge()return age;public void setAge(int age)this.age=age;public String getMajor()return major;public void setMajor(String major)this.major=major;public Student(String id,String name,String gender,int age,String major)super();this.id=id;this.name=name;this.gender=gender;this.age=age;this.major=major;public Student()