📄 scoresort.java
字号:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.util.*;
public class ScoreSort extends JPanel{
Hashtable baseInformation=null;
Student student[];
Three three[];
int size;
FileInputStream inOne=null;
ObjectInputStream inTwo=null;
FileOutputStream fos=null;
DataOutputStream dos=null;
File file=null,sortFile=null;
public ScoreSort(File file){
this.file=file;
try{
inOne=new FileInputStream(file);
inTwo=new ObjectInputStream(inOne);
baseInformation=(Hashtable)inTwo.readObject();
inOne.close();
inTwo.close();
}
catch(Exception ee){
}
size=baseInformation.size();
student=new Student[size];
three=new Three[size];
Enumeration e=baseInformation.elements();
int t=0;
for(;e.hasMoreElements();)
student[t++]=(Student)e.nextElement();
for(int i=0;i<size;i++)
three[i]=new Three(Integer.parseInt(student[i].getMath()),Integer.parseInt(student[i].getEnglish()),Integer.parseInt(student[i].getComputer()),student[i].getNumber(),student[i].getName());
sortFile=new File("各门课程排序.txt");
try{
fos=new FileOutputStream(sortFile);
dos=new DataOutputStream(fos);
int i,j,big;
Three temp;
for(i=0;i<size-1;i++){
big=i;
for(j=i+1;j<size;j++)
if(three[j].getMath()>three[big].getMath()) big=j;
if(big!=i){
temp=three[i];
three[i]=three[big];
three[big]=temp;
}
}
dos.writeUTF("***数学成绩排名***\r\n");
for(i=0;i<size;i++)
dos.writeUTF(three[i].getNumber()+"***"+three[i].getName()+"***"+three[i].getMath()+"\r\n");
for(i=0;i<size-1;i++){
big=i;
for(j=i+1;j<size;j++)
if(three[j].getEnglish()>three[big].getEnglish()) big=j;
if(big!=i){
temp=three[i];
three[i]=three[big];
three[big]=temp;
}
}
dos.writeUTF("***英语成绩排名***\r\n");
for(i=0;i<size;i++)
dos.writeUTF(three[i].getNumber()+"***"+three[i].getName()+"***"+three[i].getEnglish()+"\r\n");
for(i=0;i<size-1;i++){
big=i;
for(j=i+1;j<size;j++)
if(three[j].getComputer()>three[big].getComputer()) big=j;
if(big!=i){
temp=three[i];
three[i]=three[big];
three[big]=temp;
}
}
dos.writeUTF("***电脑成绩排名***\r\n");
for(i=0;i<size;i++)
dos.writeUTF(three[i].getNumber()+"***"+three[i].getName()+"***"+three[i].getComputer()+"\r\n");
dos.close();
String warning="已在相应目录下生成各门成绩排序的文本文档,您可以查看相应文件!";
JOptionPane.showMessageDialog(this,warning,"提示",JOptionPane.OK_CANCEL_OPTION);
}
catch(Exception ee){
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -