你会如何写一个体育节目的深度图和阵容?

时间:2012-06-10 16:41:20

标签: java arraylist

我需要一些概念上的帮助。我正在尝试制作一个小棒球应用程序。在棒球比赛中有一个深度图表,可以让所有队员都按位置进行比赛。我还需要创建一个阵容,这个阵容只能是各自深度图顶部的玩家。如何最好(最有效的方式)去做。我担心的工作解决方案是原始的(我仍然很新,所以我很抱歉,如果它只是无用的)

我拥有的是:

    private List<Player>[] depthChart = new ArrayList[9]; // 0 catcher, 1 pitcher, etc
private ArrayList<Player> lineup = new ArrayList<Player>(); // 0 of depthChart only

游戏计划是通过depthChart数组进行解析,并确保只有第一个条目可以进入该行。我必须构建约束和逻辑,以确保您不能有重复项并确保维护阵容顺序。但我不能帮助以为有更好的方法。

我知道这不会帮助所有人,所以如果你想忽略这一点。但如果有更聪明的人,我会喜欢一些提示和指导。你不需要为我编码。我只需要提示如何处理这个问题。

1 个答案:

答案 0 :(得分:1)

我会尝试Map,其中键是位置枚举,值是Set Players谁可以扮演该位置。给Player一个序数值深度,以便您可以按此排序。

public enum Position {
    PITCHER, CATCHER, FIRST, SECOND, SHORT, THIRD, LEFT, CENTER, RIGHT
}

public class Player {
    private String name;
    private Position position;
    private int depth;  
    // be sure to properly override equals and hash code to eliminate duplicates  
}