java设计一个竞赛评分程序,要求:
(1)能设置评委数,评委数作为公共静态的数据存储在选手信息类中。
(2)利用 ArrayList 存储选手对象,能添加、删除选手。
(3)能输入选手得分。
(4)选手的最终分数为去掉一个最高分和一个最底分后的求平均分。
(5)能输出每个选手的编号、姓名和最终分数
![](https://profile-avatar.csdnimg.cn/default.jpg!4)
java程序设计Arraylist问题
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- \u001F 2021-10-13 20:50关注
// 应该是还有bug的,但是我不想改 @Data class Player{ private String name; private int code; private List<Integer> score; private int finalScore; } public class Hello { public static int judge = 0; public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int useFor; List<Player> players = new ArrayList<>(); boolean boo = true; while (boo) { System.out.println("你要干啥?"); useFor = scanner.nextInt(); switch (useFor) { case 1: System.out.println("请输入评委个数"); judge = scanner.nextInt(); System.out.println("评委个数:" + judge); break; case 2: System.out.println("添加选手"); String name = scanner.next(); System.out.println(name); int code = scanner.nextInt(); int score; List<Integer> scores = new ArrayList<>(); for (int i = 0; i < judge; i++) { score = scanner.nextInt(); scores.add(score); } Player player = new Player(); player.setName(name); player.setCode(code); player.setScore(scores); players.add(player); Collections.sort(scores); int totalScore = 0; for (int i = 1; i < judge - 1; i++) { totalScore += scores.get(i); } player.setFinalScore(totalScore/(judge-2)); System.out.println("选手:" + player); break; case 3: System.out.println("各个选手:"); for (Player temp : players) { System.out.println(temp); } break; case 4: boo = false; System.out.println("爷溜了"); break; default: break; } } } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 在若依框架下实现人脸识别
- ¥15 网络科学导论,网络控制
- ¥100 安卓tv程序连接SQLSERVER2008问题
- ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
- ¥15 metadata提取的PDF元数据,如何转换为一个Excel
- ¥15 关于arduino编程toCharArray()函数的使用
- ¥100 vc++混合CEF采用CLR方式编译报错
- ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
- ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
- ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同