我做了個控制臺的:
異常沒處理!
--------------------------------------------------------
import?java.util.Scanner;
public?class?Main?{
Scanner?input?=?new?Scanner(System.in); public?static?void?main(String[]?args)?{Main?m=?new?Main();
m.showView();
} public?void?showView(){System.out.println("歡迎使用學生管理系統");
System.out.println("******************");
System.out.println("1.輸入學生信息");
System.out.println("2.展示學生信息");
System.out.println("3.退出系統");
System.out.println("請選擇:");
choseFunction();
} public?void?choseFunction(){int?i=?input.nextInt();
switch(i){
case?1:
InputInfo?ii?=?new?InputInfo(); ii.check(); this.showView(); break;case?2:
ShowInfo?si?=?new?ShowInfo(); si.show(); this.showView(); break;case?3:
System.out.println("Bye-Bey!"); System.exit(0); break;default:
System.out.println("輸入有誤,請重新輸入:"); this.choseFunction(); break;}
}}
------------------------------------------------------------
import?java.util.Scanner;
import?java.util.List;
import?java.io.*;
public?class?InputInfo?{
StuDataSource?sds?=?new?StuDataSource(); Scanner?input?=?new?Scanner(System.in); List<StuInfo>?list?=?sds.getList(); private?StuInfo?input(){StuInfo?stu?=?new?StuInfo();
System.out.println("請輸入學生姓名:");
stu.setName(input.next());
System.out.println("請輸入學生學號:");
stu.setNo(input.next());
System.out.println("請輸入學生成績(數字):");
stu.setScore(input.nextDouble());
if(list.size()>0){
list?=?this.sort(stu);}else{
list.add(stu);}
return?stu;
} private?void?save(StuDataSource?s){try?{
ObjectOutputStream?out?=?new?ObjectOutputStream(new?FileOutputStream("StuInfos.out")); out.writeObject(s); out.flush(); out.close();}?catch?(FileNotFoundException?e)?{
//?TODO?Auto-generated?catch?block e.printStackTrace();}?catch?(IOException?e)?{
//?TODO?Auto-generated?catch?block e.printStackTrace();}
} public?void?check(){String?istr="";
do{
this.input(); System.out.println("還要繼續錄入嗎?(Y/N)"); istr?=?input.next(); istr.toLowerCase();}while(istr.equals("y"));
this.save(sds);
} public?List<StuInfo>?sort(StuInfo?stu){for?(int?i?=?list.size();?i?>0?;?i--)?{
StuInfo?tempStu?=?(StuInfo)?list.get(i-1); if(tempStu.getScore()<stu.getScore()){list.add(i,stu);
return?list;
}else?if(i-1==0&&tempStu.getScore()>stu.getScore()){list.add(0,stu);
}}
return?list;
}}
----------------------------------------------------------
import?java.io.FileInputStream;
import?java.io.FileNotFoundException;
import?java.io.IOException;
import?java.io.ObjectInputStream;
import?java.util.List;
import?java.util.Scanner;
public?class?ShowInfo?{
Scanner?input?=?new?Scanner(System.in); public?String?show(){String?istr?="";
System.out.println("姓名"+"\t"+"學號"+"\t"+"成績");
try?{
ObjectInputStream?in?=?new?ObjectInputStream(new?FileInputStream("StuInfos.out")); StuDataSource?stus?=?(StuDataSource)in.readObject(); List<StuInfo>?list?=?stus.getList(); for?(int?i?=?0;?i?<?list.size();?i++)?{StuInfo?stu?=?list.get(i);
System.out.println(stu.getName()+"\t"+stu.getNo()+"\t"+stu.getScore());
} System.out.println("按任意鍵返回!"); istr=input.next().toLowerCase();}?catch?(FileNotFoundException?e)?{
//?TODO?Auto-generated?catch?block e.printStackTrace();}?catch?(IOException?e)?{
//?TODO?Auto-generated?catch?block e.printStackTrace();}?catch?(ClassNotFoundException?e)?{
//?TODO?Auto-generated?catch?block e.printStackTrace();}
return?istr;
}}
-----------------------------------------------------------
import?java.io.*;
public?class?StuInfo?implements?Serializable{
private?String?name; private?String?no; private?double?score; public?String?getName()?{return?name;
} public?void?setName(String?name)?{this.name?=?name;
} public?String?getNo()?{return?no;
} public?void?setNo(String?no)?{this.no?=?no;
} public?double?getScore()?{return?score;
} public?void?setScore(double?score)?{this.score?=?score;
}}
-------------------------------------------------------------
import?java.io.Serializable;
import?java.util.ArrayList;
import?java.util.List;
public?class?StuDataSource?implements?Serializable?{
private?List<StuInfo>?list?=?new?ArrayList<StuInfo>(); public?List<StuInfo>?getList()?{return?list;
} public?void?setList(List<StuInfo>?list)?{this.list?=?list;
}}
----------------------------------------------------------
思路就是這樣!加分給我謝謝~!