1 问题总览
参加计算机设计大赛的n个学校编号为1~n,赛事分成m个项目,项目的编号为1~m.比赛获奖按照得分降序,取前三名,写一个统计程序产生各种成绩单和得分报表。
2 任务概述
2.1 基本要求
1)每个比赛项目至少有10支参赛队;每个学校最多有6支队伍参赛;
2)能统计各学校的总分;
3)可以按照学校编号或名称,学校的总分、各项目的总分排序输出;
4)可以按学校编号查询学校某个项目的获奖情况;可以按项目编号查询取得前三名的学校;
5)数据存入文件并能随时查询
2.2 设计要求
1)输入数据形式和范围:可以输入学校的名称,赛事项目的名称。
2)输出形式:有中文提示,各学校分数为整数
3)界面要求:交互设计要合理,每个功能可以设立菜单,根据提示,可以完成相关功能的要求。
4)存储结构:学生自己根据系统功能要求自己设计,但是赛事相关数据要存储在文件中。
2.3 测试数据
要求使用全部合法数据,整体非法数据,局部非法数据。进行程序测试,以保证程序的稳定。
2.4 实现提示
假设3<赛事项目数量<=10,学校名称长度不超过20个字符。每个赛事结束时,将其编号、名称输入,并依次输入参赛学校编号、学校名称和成绩。
3 需求分析
3.1 基础功能
3.1.1 信息查询及编辑
学校信息(编号名称等),赛事信息(编号等),成绩单(总得分等),获奖情况
3.1.2 排序输出
按学校编号/名称,学校总分、各项目总分输出,基于排序进行查询并且输出
3.1.3 数据存储
将上述信息存储到指定文件中
3.2 进阶功能思考
3.2.1 权限
考虑到系统的不同用户应该获取不同的使用权限,未登录的访客仅可查看赛事相关信息,普通学校队伍用户只可获取查询得分、名次等权限,赛事管理方拥有编辑赛事、修改分数等全部权限。系统创建者拥有权限修改的全部权限。
而权限的制约需要用下述用户登录功能
3.2.2 用户登录
由赛事管理方赋予各学普通用户权限进行制约。而赛事方登录信息由系统创建者在创建系统时赋予或修改。校方用户可自行注册,进行登录,密码修改等操作。
3.2.3 交互模式
鉴于该系统属于层层递进系,菜单操作比较适合。考虑到不同用户权限,菜单功能也不尽相同。
3.3 系统流程图
3.4 编程语言
鉴于个人已学知识与掌握程度,java比较适合。
4 设计
4.1 设计条件
1.参与的队伍<10的比赛项目没有权限进行
2.每个学校的参赛队伍<=6
3.设3<赛事项目数量<=10,学校名称长度不超过20个字符
4.每个赛事结束时,将其编号、名称输入,并依次输入参赛学校编号、学校名称和成绩
5.得分均为int整型,编号均为int整型
4.2 注意点
1.当某一个赛事两支队伍的得分相同时,如何排序?
2.当一个队伍参加多项赛事时,数据如何存储?
4.3 设计思路
考虑到本系统数据结构是线性表,故考虑使用java中的ArrayList进行数据的增删改查,同时可以使用ArrayList的一系列内部方法进行操作,使系统开发相对简洁。同时用户登录模块也可以使用ArrayList进行编辑。
值得一提的是,在之前的学习中,发现ArrayList配getInstance使用可以完美契合在外部类对原始数据的一系列操作,希望在本次系统的开发过程中也可以发挥作用。
对于数据的存储,可以调用BufferedWriter系列功能。
在排序模块中,或将使用基础的直接排序或冒牌排序等功能。
针对4.2中的问题,问题1初步考虑按学校编号进行二次排序;问题2初步考虑单独对队伍创建ArrayList进行不同赛事结果的存储。
总体思路:不同数据组使用不同的List,各功能也创建不同的类,最后集成在main方法中。
4.4 详细设计
4.4.1 类定义
School类,内含学校Sid,学校名称Sname,学校参赛队伍Steam个数,总分Sscore等,
Team类,内含所属学校sid,队伍Tid,队伍名称Tname,参加项目Tevent和所得分数Tscore等字段
Event类,内含项目Eid,名称Ename以及参加该项目的队伍信息Etid;
EventScore类,内含以上所有字段,为总数据源;
以上类包含的数据均使用ArrayList进行数据源集合,使用getInstance方法将数据应用至外部方法。
4.4.2 主要功能函数
a.登录login
b.注册regist
c.查看项目信息seeevent
d.查询项目成绩/排名query(登录权限)
e.输入/修改项目信息/成绩manage(管理员权限)
f.查看各学校/队伍获奖情况seeprize(登录权限)
g.注销outlogin(已登录情况下)
5.主要代码
首先附上部分效果图
5.1 Dao层方法及main函数
package Dao;
import entity.*;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Random;
public class UserDao {
List<user> list= userDB.getInstance();
List listlogin= iflogin.getInstance();
List<Event>eventList= EventDB.getEventlist();
List<Team>eteamtList= EventDB.getEteamlist();
List<School>schoolList= SchoolDB.getSchoollist();
List<Team>SteamList=SchoolDB.getSteamlist();
List<Event>TeventList= TeamDB.getTeventlist();
List<Team>teamList=TeamDB.getTeamlist();
List<user>listuser= userDB.getInstance();
List<EventScore>eventScoreList=EventScoreDB.getEventscorelist();
public int addUser(user user){
list.add(user);
return 0;
}
public int denglu(){
for(int i=0;i<listlogin.size();i++){
if(listlogin.get(i).equals(1))
return i;}
return 0;
}
public int findindex(String name) {
for (int i = 0; i < list.size(); i++) {
if (list.get(i).getId().equals(name))
return i;
}
return 0;
}
public int checklogin(){
for(int i=0;i<listlogin.size();i++){
if(listlogin.get(i).equals(1))
return 1;
}
return 0;
}
public boolean checkname(String name) {
int flag=1;
for (user user : list) {
if (user.id.equals(name))
flag=0;
}
if(flag==0)return false;
else return true;
}
public String checkcode(String code){
if(code.length()>=6&&code.length()<=10){
return code;
}else return "0";
}
public boolean againcode(String code,String againcode){
if(code.equals(againcode)) return true;
else return false;
}
public String rdate(){
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm");
return df.format(new Date());
}
public String vercode(){
String base = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
StringBuffer sb = new StringBuffer() ;
Random rd = new Random();
for (int i = 0; i < 4; i++) {
int start = rd.nextInt(base.length());
String a = base.substring(start,start+1);
sb.append(a);
}
return sb.toString();
}
public user findByName(String name){
for(user user:list){
if (user.name.equals(name)){
return user;
}
}
return null;
}
public boolean checkUserName(String name){
boolean flag = false;
for(user user:list){
if (user.id.equals(name)){
flag=true;
}
}
return flag;
}
public boolean checkUserPassword(String userName,String userPassword){
boolean flag = false;
for (int i = 0; i < list.size(); i++) {
if(list.get(i).getId().equals(userName)&&list.get(i).getCode().equals(userPassword)){
flag = true;
}
}
return flag;
}
public int index(List<Team> list,String id){
for(int i=0;i<list.size();i++){
if(list.get(i).getSid().equals(id))
return i;
}
return 0;
}
public int Sidtotalscore(String schoolid){
int total=0;
for(int i=0;i<eventScoreList.size();i++){
if(eventScoreList.get(i).getEteamschoolid().equals(schoolid))
total= total+eventScoreList.get(i).getEscore();
}return total;
}
public void detaitotalscore(String schoolid,int score){
for(int i=0;i<schoolList.size();i++){
if(schoolList.get(i).getSid().equals(schoolid)){
schoolList.get(i).score+=score;
}
}
}
public boolean checkEid(String Eid){
boolean f=true;
for(int i=0;i<eventScoreList.size();i++){
if(eventScoreList.get(i).getEid().equals(Eid))
f=false;
}return f;
}
public boolean checkTid(String Tid,List<EventScore> list){
boolean f=true;
for(int i=0;i<list.size();i++){
if(list.get(i).getEteamid().equals(Tid))
f=false;
}return f;
}
public boolean checkSid(String Sid){
for(int i=0;i<schoolList.size();i++){
if(schoolList.get(i).getSid().equals(Sid))
return false;
}return true;
}
public void deldata(String id){
for(int i=0;i<eventScoreList.size();i++){
if(eventScoreList.get(i).getEid().equals(id)){
eventScoreList.remove(i);
}
}
}
public void schoolsort(List<School> list){
School temp;
for(int i=0;i<list.size();i++)
for(int j=i;j<list.size();j++){
if(list.get(i).getSscore()<list.get(j).getSscore()){
temp=list.get(i);
list.set(i,list.get(j));
list.set(j,temp);
}
}
}
public void schooldetailsort(List<School> list){
School temp;
for(int i=0;i<list.size();i++)
for(int j=i;j<list.size();j++){
if(list.get(i).getScore()<list.get(j).getScore()){
temp=list.get(i);
list.set(i,list.get(j));
list.set(j,temp);
}
}
}
main函数
package function;
import Dao.UserDao;
import Dao.iflogin;
import java.util.List;
import java.util.Scanner;
public class maintest {
private static final maintest main = new maintest();
private maintest() {
}
public static maintest getInstance() {
return main;
}
public static void main(String[] args) {
getInstance().index();
}
public void index() {
Scanner sc = new Scanner(System.in);
List listlogin = iflogin.getInstance();
if (new UserDao().checklogin()==0) {
System.out.println("$$$$$$$$$$$$$欢迎使用计算机设计大赛赛事管理系统$$$$$$$$$$$$$\n1.登录\n2.注册(用户id不可重复)\n3.管理(需要管理员权限)" +
"\n4查询赛事结果");
int m = sc.nextInt();
switch (m) {
case 1:
new login().checkUserName();
break;
case 2:
new register().name1();
break;
case 3:
// if( new UserDao().checklogin()==1)
// {
new manage().matchmanage();
//}
// else {
// System.out.println("您尚未登录,无法管理!");
// index();
// }
break;
case 4:
new query().chaxun();
break;
default:
System.out.println("输入错误,请重新选择!");
index();
}
} else {
System.out.println("$$$$$$$$$$$$$欢迎使用计算机设计大赛赛事管理系统$$$$$$$$$$$$$\n1.退出登录\n2.注册(用户id不可重复)\n3.管理\n4.查询");
int m = sc.nextInt();
switch (m) {
case 1:
new outlogin().zhuxiao();
break;
case 2:
new register().name1();
break;
case 3:
if( new UserDao().checklogin()==1)
{new manage().matchmanage();}
else {
System.out.println("您尚未登录,无法管理!");
index();
}
case 4:
new query().chaxun();
break;
default:
System.out.println("输入错误,请重新输入!");
index();
}
}
}
}
5.2 登录注册模块(包括注销)
package function;
import Dao.*;
import entity.user;
import java.util.List;
import java.util.Scanner;
public class login {
List<user> list = userDB.getInstance();
List listlogin= iflogin.getInstance();
Scanner scan = new Scanner(System.in);
public void checkUserName() {
if(new UserDao().checklogin()==0) {
System.out.println("请输入用户id:——0退出");
String userName = scan.next();
if (userName.equals("0")) {
System.out.println("谢谢使用!再见!");
maintest.getInstance().index();
} else if (new UserDao().checkUserName(userName)) {
System.out.println("请输入密码!---0键退出");
checkUserPassword(userName);
} else {
System.out.println("用户名输入有误!请重新输入!");
checkUserName();
}
}
else {
System.out.println("已有用户正在登陆,请勿重复登录!已返回主菜单!");
maintest.getInstance().index();
}
}
public void checkUserPassword(String name) {
String userPassword = scan.next();
if (userPassword.equals("0")) {
System.out.println("谢谢使用!再见!");
} else if (new UserDao().checkUserPassword(name, userPassword)) {
System.out.println("请输入以下验证码(不区分大小写)!");
checkVercode(name);
} else {
System.out.println("密码错误!请重新输入————");
checkUserPassword(name);
}
}
public void checkVercode(String name) {
String a = new UserDao().vercode();
System.out.println("您的验证码是: " + a + " ");
String v = scan.next();
if (v.equals(a)) {
System.out.println(list.get(new UserDao().findindex(name)).getName()+" 登陆成功!已返回主界面!");
int indext=new UserDao().findindex(name);
listlogin.set(indext,1);
maintest.getInstance().index();
} else {
System.out.println("验证码输入错误,请再试一次!");
checkVercode(name);
}
}
public int index(String name){
return new UserDao().findindex(name);
}
}
package function;
import Dao.*;
import entity.user;
import java.util.List;
import java.util.Scanner;
import java.util.concurrent.CopyOnWriteArrayList;
public class register {
String name="";
String name2="";
String code1="";
String code2="";
String zhucedate="";
Scanner sc = new Scanner(System.in);
List<user> list = userDB.getInstance();
List listlogin= iflogin.getInstance();
public void name1() {
System.out.println("请输入注册id:");
name = sc.next();
if (new UserDao().checkname(name)) {
System.out.println(name + "成功注册");
name2();
}else{
System.out.println("该id已被注册!请重新输入————");
name1();
}
}
public void name2(){
System.out.println("请输入您的名称:");
name2=sc.next();
code1();
}
public void code1(){
System.out.println("请设置您的密码,长度为6-10位:");
code1=sc.next();
if (new UserDao().checkcode(code1)=="0"){
System.out.println("该密码不符合规范,请重新输入————");
code1();
}
else System.out.println("密码设置成功!");
againcode1();
}
public void againcode1(){
System.out.println("请再次输入密码以确认:");
code2=sc.next();
if (new UserDao().againcode(code1,code2)){
System.out.println("确认密码成功!");
yanzhengma();}
else{ System.out.println("确认密码失败,请重新输入————");
code1();}
}
public void yanzhengma(){
String b= new UserDao().vercode();
System.out.println("您的验证码是: "+b+"\n请输入验证码,区分大小写!");
String a=sc.next();
if(a.equals(b)){
System.out.println("验证成功!注册成功!");
date();
}
else {
System.out.println("验证码输入错误!请再试一次!");
yanzhengma();
}
}
public void date(){
System.out.println("您注册时间是: "+new UserDao().rdate());
storage();
}
public void storage() {
user us = new user(name,name2,code1,0);
list.add(us);
listlogin.add(new UserDao().findindex(name),0);
System.out.println("输入任意值返回主管理菜单!");
Object t1 = sc.nextLong();
if (t1 != null) maintest.getInstance().index();
else {
maintest.getInstance().index();
}
}
}
package function;
import Dao.UserDao;
import Dao.iflogin;
import Dao.userDB;
import entity.user;
import java.util.List;
import java.util.Scanner;
public class outlogin {
List<user> list = userDB.getInstance();
List listlogin= iflogin.getInstance();
Scanner sc=new Scanner(System.in);
public void zhuxiao(){
System.out.println("确认使当前账户的退出登录吗?确认输入1,取消输入任意其他数字并返回主菜单");
int p=sc.nextInt();
if(p==1)delloggin();
else maintest.getInstance().index();
}
public void delloggin(){
int x=new UserDao().denglu();
listlogin.set(x,0);
System.out.println("注销成功,已返回主菜单");
maintest.getInstance().index();
}
}
5.3管理模块
管理需要管理员权限,对赛事记录增删改查(包括文件的读取)。
package function;
import Dao.*;
import entity.*;
import java.io.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.util.concurrent.CopyOnWriteArrayList;
public class manage {
List listlogin = iflogin.getInstance();
List<Event>eventList= EventDB.getEventlist();
List<Team>eteamtList= EventDB.getEteamlist();
List<School>schoolList= SchoolDB.getSchoollist();
List<Team>SteamList=SchoolDB.getSteamlist();
//List<Event>TeventList= TeamDB.getTeventlist();
List<Team>teamList=TeamDB.getTeamlist();
List<user>listuser= userDB.getInstance();
List<EventScore>eventScoreList=EventScoreDB.getEventscorelist();
Scanner sc=new Scanner(System.in);
public void matchmanage(){if (listuser.get(new UserDao().denglu()).getType()==1)
{
System.out.println("请输入你想使用的功能:\n1.赛事成绩录入\n2.赛事成绩删除\n3.从文件中读取数据\n其余任意值返回主菜单");
String a1=sc.next();
if(a1.equals("1")){ addevent();}
else if(a1.equals("2")){
delscore();
}
else if(a1.equals("3"))datain();
else{maintest.getInstance().index();}
}
else System.out.println("您不是赛事管理员,无权管理!将返回主菜单");
maintest.getInstance().index();
}
public void addevent(){
if(eventList.size()<11){
System.out.println("请输入赛事编号:");
String eventid=sc.next();
if(new UserDao().checkEid(eventid)){
System.out.println("请输入赛事名称");
}
else {
System.out.println("赛事id重复,请重新输入!");
addevent();
}
String eventname=sc.next();
List<EventScore> list=new CopyOnWriteArrayList();
eventList.add(new Event(eventid,eventname,list));
addteam(eventid,eventname,list);
}
else {
System.out.println("赛事项目数量超出范围!");
matchmanage();
}
}
public void addteam(String eventid,String eventname,List<EventScore> list){
System.out.println("请依次输入队伍id、队伍名称、队伍得分、队伍所属学校id、队伍所属学校名称");
String teamid = sc.next();
if(new UserDao().checkTid(teamid,list)) {
String teamname = sc.next();
Scanner s=new Scanner(System.in);
if (s.hasNextInt()) {int score=s.nextInt();
String schoolid = sc.next();
String schoolname = sc.next();
eventScoreList.add(new EventScore(eventid, eventname, teamid, teamname, schoolid, schoolname, score));
if(new UserDao().checkSid(schoolid)){
schoolList.add(new School(schoolid, schoolname,null,0,0));}
teamList.add(new Team(teamid,teamname,schoolid,schoolname,0));
}
else {
System.out.println("得分输入的不是数字,请重新输入!");
addteam(eventid, eventname,list);
}
}
else {
System.out.println("队伍id重复,请重新输入!");
addteam(eventid,eventname,list);
}
System.out.println("数据已保存,您还要继续输入队伍成绩吗?\n继续输入扣1,查看数据扣2,其他任意内容返回主菜单");
String a3=sc.next();
if(a3.equals("1")){
addteam(eventid,eventname,list);
}
else if(a3.equals("2")){
seeall();
System.out.println("请输入您的选择:\n1.继续录入赛事信息\n2返回上级菜单\3数据写入文件\n其他任意数字返回主菜单");
String a1=sc.next();
if(a1.equals("1")){ addevent();
}
else if(a1.equals("2")){
matchmanage();
}
else if(a1.equals("3")){
try {
File file=new File("D:/1.txt");
// if file doesnt exists, then create it
if (!file.exists()) {
file.createNewFile();
}
FileWriter fw = new FileWriter(file.getAbsoluteFile());
BufferedWriter bw = new BufferedWriter(fw);
for(int i=0;i<eventScoreList.size();i++){
bw.write(eventScoreList.get(i).getEid()+","+eventScoreList.get(i).getEname()+","+
eventScoreList.get(i).getEteamid()+","+eventScoreList.get(i).getEteamname()+","+
eventScoreList.get(i).getEscore()+","+eventScoreList.get(i).getEteamschoolid()+","+
eventScoreList.get(i).getEteamschoolname()+"\n");}
bw.close();
System.out.println("存入完成!");
} catch (IOException e) {
e.printStackTrace();
}
matchmanage();
}
else{maintest.getInstance().index();}
}
else {maintest.getInstance().index();}
}
public void seeall(){
System.out.println("赛事id 赛事名称 队伍id 队伍名称 得分 队伍所属学校 学校名称");
for(int a=0;a<eventScoreList.size();a++){
System.out.println(eventScoreList.get(a).getEid()+" "+eventScoreList.get(a).getEname()+" "+
eventScoreList.get(a).getEteamid()+" "+eventScoreList.get(a).getEteamname()+" "+
eventScoreList.get(a).getEscore()+" "+eventScoreList.get(a).getEteamschoolid()+" "+
eventScoreList.get(a).getEteamschoolname() );
}
}
public void delscore(){
System.out.println("赛事记录如下:");
seeall();
System.out.println("请输入需要删除的赛事编号:") ;
String id=sc.next();
new UserDao().deldata(id);
}
public void datain(){
List<EventScore> al = new CopyOnWriteArrayList();
FileInputStream fis = null;
try {
fis = new FileInputStream("1.txt");
int len;
byte[] b = new byte[1024];
while ((len = fis.read(b)) != -1) {
String s = new String(b, 0, len);
String[] str = s.split("\n");
for (int i = 0; i < str.length; i++) {
String[] s1 = str[i].split(",");
String Eid = s1[0];
String Ename=s1[1];
String Tid=s1[2];
String Tname=s1[3];
int score = Integer.parseInt(s1[4]);
String Sid=s1[5];
String Sname=s1[6];
eventScoreList.add(new EventScore(Eid,Ename,Tid,Tname,Sid,Sname,score));
}}
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("读取成功!信息如下:");
System.out.println("赛事id 赛事名称 队伍id 队伍名称 得分 队伍所属学校 学校名称");
for(int a=0;a<eventScoreList.size();a++){
System.out.println(eventScoreList.get(a).getEid()+" "+eventScoreList.get(a).getEname()+" "+
eventScoreList.get(a).getEteamid()+" "+eventScoreList.get(a).getEteamname()+" "+
eventScoreList.get(a).getEscore()+" "+eventScoreList.get(a).getEteamschoolid()+" "+
eventScoreList.get(a).getEteamschoolname() );
}
matchmanage();
}
}
5.4 查询模块
查询包含基本要求(部分代码)
package function;
import Dao.*;
import entity.*;
import java.util.List;
import java.util.Scanner;
public class query {
List listlogin = iflogin.getInstance();
List<Event>eventList= EventDB.getEventlist();
List<Team>eteamtList= EventDB.getEteamlist();
List<School>schoolList= SchoolDB.getSchoollist();
List<Team>SteamList=SchoolDB.getSteamlist();
List<Event>TeventList= TeamDB.getTeventlist();
List<Team>teamList=TeamDB.getTeamlist();
List<user>listuser= userDB.getInstance();
List<EventScore>eventScoreList=EventScoreDB.getEventscorelist();
Scanner sc=new Scanner(System.in);
public void chaxun(){
System.out.println("请输入您想要的功能:\n1.学校总体情况查询\n2.按项目精确查询\n其余任意键返回主菜单");
String t=sc.next();
if(t.equals("1")){
System.out.println("请选择:\n1.查看全部学校总分排名\n2.根据学校编号/名称查询该校获奖情况\n其余键返回上级");
String t1=sc.next();
if(t1.equals("1")){Sallscore();}
else if(t1.equals("2")){
detailscore();}
}
else if(t.equals("2")){
System.out.println("请选择:1.根据项目编号查询取得前三的学校\n2.根据学校名称查询具体项目总分\n其余键返回上级" );
String t2=sc.next();
if(t2.equals("1"))thirdscore();
else if(t2.equals("2"))snameEscore();
}
}
public void snameEscore() {
System.out.println("请输入学校名称——");
String sname=sc.next();
System.out.println("请输入赛事编号——");
String eid=sc.next();
System.out.println("该校参与该赛事的队伍及得分情况如下:\n队伍ID 队伍名称 得分");
for(int i=0;i<eventScoreList.size();i++){
if(eventScoreList.get(i).getEteamschoolname().equals(sname)&&eventScoreList.get(i).getEid().equals(eid)){
eventScoreList.get(i).toString2();
}
}
chaxun();
}
public void Sallscore(){
System.out.println("排名 学校名称 总分");
for(int i=0;i<schoolList.size();i++) {
schoolList.get(i).setSscore(new UserDao().Sidtotalscore(schoolList.get(i).getSid()));
}
new UserDao().schoolsort(schoolList);
for(int i=0;i<schoolList.size();i++){
System.out.println((i+1)+"."+schoolList.get(i).getSname()+" "+schoolList.get(i).getSscore());}
chaxun();
}
public void detailscore(){
System.out.println("请输入学校编号/名称");
String schoolid=sc.next();
System.out.println("该校的获奖情况如下:\n");
System.out.println("队伍id 队伍名称 项目名称 得分");
for(int i=0;i<eventScoreList.size();i++){
if(eventScoreList.get(i).getEteamschoolid().equals(schoolid)||eventScoreList.get(i).getEteamschoolname().equals(schoolid)){
eventScoreList.get(i).toString1();
}
}
chaxun();
}
public void thirdscore(){
System.out.println("请输入项目编号——");
String eid=sc.next();
for(int i=0;i<eventScoreList.size();i++){
if(eventScoreList.get(i).getEid().equals(eid)){
new UserDao().detaitotalscore(eventScoreList.get(i).getEteamschoolid(),eventScoreList.get(i).getEscore());
}
}
new UserDao().schooldetailsort(schoolList);
System.out.println("该项目中得分前三的学校是:\n排名 学校名称 总分");
for(int i=0;i<3;i++){
System.out.println((i+1)+"."+schoolList.get(i).getSname()+" "+schoolList.get(i).getScore());}
chaxun();
}
}