这个java案例显示被射门次数对比?

wen java案例 5

本文目录导读:

这个java案例显示被射门次数对比?

  1. 示例代码:被射门次数对比
  2. 运行结果
  3. 可扩展方向

为了帮您实现“被射门次数对比”的功能,我可以给您一个通用的Java示例,通常这类需求会涉及:

  1. 数据模型:球队名称 + 被射门次数
  2. 对比逻辑:排序、找最多/最少、计算差值
  3. 输出展示:控制台表格或简单可视化

示例代码:被射门次数对比

import java.util.*;
public class ShotsOnTargetComparison {
    // 球队数据模型
    static class TeamStats {
        String teamName;
        int shotsAgainst; // 被射门次数
        public TeamStats(String teamName, int shotsAgainst) {
            this.teamName = teamName;
            this.shotsAgainst = shotsAgainst;
        }
    }
    public static void main(String[] args) {
        // 1. 准备数据
        List<TeamStats> teams = new ArrayList<>();
        teams.add(new TeamStats("曼城", 8));
        teams.add(new TeamStats("利物浦", 15));
        teams.add(new TeamStats("阿森纳", 11));
        teams.add(new TeamStats("切尔西", 20));
        teams.add(new TeamStats("曼联", 18));
        // 2. 按被射门次数升序排序(越少防守越好)
        teams.sort(Comparator.comparingInt(t -> t.shotsAgainst));
        // 3. 打印对比表格
        System.out.println("========== 被射门次数对比 ==========");
        System.out.printf("%-10s %-12s %-10s%n", "球队", "被射门次数", "与最少差值");
        System.out.println("-----------------------------------");
        int min = teams.get(0).shotsAgainst;
        int max = teams.get(teams.size() - 1).shotsAgainst;
        int total = 0;
        for (TeamStats t : teams) {
            int diff = t.shotsAgainst - min;
            total += t.shotsAgainst;
            System.out.printf("%-10s %-12d %-10s%n",
                    t.teamName,
                    t.shotsAgainst,
                    diff == 0 ? "最少" : "+" + diff);
        }
        // 4. 统计信息
        double avg = (double) total / teams.size();
        System.out.println("-----------------------------------");
        System.out.printf("被射门最少:%s(%d 次)%n", teams.get(0).teamName, min);
        System.out.printf("被射门最多:%s(%d 次)%n",
                teams.get(teams.size() - 1).teamName, max);
        System.out.printf("平均被射门:%.2f 次%n", avg);
        System.out.printf("最多与最少差值:%d 次%n", max - min);
    }
}

运行结果

========== 被射门次数对比 ==========
球队        被射门次数    与最少差值
-----------------------------------
曼城        8            最少
阿森纳      11           +3
利物浦      15           +7
曼联        18           +10
切尔西      20           +12
-----------------------------------
被射门最少:曼城(8 次)
被射门最多:切尔西(20 次)
平均被射门:14.40 次
最多与最少差值:12 次

可扩展方向

功能 实现方式
图形化对比 JFreeChart 画柱状图
数据读取 从 CSV / JSON / 数据库读取
Web 展示 Spring Boot + ECharts
多维度对比 增加射正、控球率等字段

如果您能把您手上的那段Java代码或案例描述发出来(可以粘贴文本或截图),我可以帮您:

  • ✅ 分析它现有的被射门对比逻辑
  • ✅ 指出问题或优化点
  • ✅ 按您的数据格式改写对比功能 补充一下,我再针对性回答 😊

抱歉,评论功能暂时关闭!