java设计一个竞赛评分程序,要求:
(1)能设置评委数,评委数作为公共静态的数据存储在选手信息类中。
(2)利用 ArrayList 存储选手对象,能添加、删除选手。
(3)能输入选手得分。
(4)选手的最终分数为去掉一个最高分和一个最底分后的求平均分。
(5)能输出每个选手的编号、姓名和最终分数
// 应该是还有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.定义选手的JAVABEAN,保存选手信息;
2.定义ArrayList成员变量,新增选手时add到ArrayList里面;
3.使用get方法读取出来修改;
4.使用remove删除。