所以,起初我认为这是一个愚蠢的问题,但是当我考虑到这个类的实现时,我意识到我可能是在错误地处理这个问题,或者它比我想象的更复杂。我也不知道我是否完全理解枚举的正确用法。以下是我想做的事:
我有一班竞争对手。竞争对手有一个年龄类别,它只能是4个可能值中的一个,所以我将其放入一个嵌入的枚举类中。下面是它变得棘手的地方:
每个竞争对手有7个类别/部门,他们的排名是有限的一组价值的类别。例如,他们可能被列为“B级”的左轮手枪师。
我想要创建一个竞争对手,它拥有我分配给竞争对手字段的所有值,加上一个列表(我目前正在使用一个单独的对象“除法”)来显示每个部门的所有竞争者的排名。我希望最终能够使用Gson库将完整的竞争者对象(除法和所有)解析为Json,但是我无法思考是否正确地处理这个问题,或者解析方法是否能够正确地解析它。任何帮助都将不胜感激。
这是我的代码:
public class Competitors {
private String referenceNum;
private String firstName;
private String lastName;
private String memberNum;
private boolean lady;
private enum Age{
JUNIOR,
ADULT,
SENIOR,
SUPER_SENIOR;
}
private Division divisionRankings;
}
class Division{
private String revolver;
private String singleStack;
private String production;
private String limited;
private String limited10;
private String open;
private String pistolCaliberCarbine;
private enum Classes{
U, D, C, B, A, M, GM;
}
}发布于 2017-08-29 23:19:30
下面是一个很好地映射到JSON的模型:
public class Competitor {
public enum Age {
JUNIOR,
ADULT,
SENIOR,
SUPER_SENIOR;
}
public String referenceNum;
public String firstName;
public String lastName;
public String memberNum;
public boolean lady;
public Age age;
public Map<String, Ranking> divisionRankings;
}
public enum Ranking {
U, D, C, B, A, M, GM;
}如果想让外部世界可以访问字段(或者使用getter和setter),则需要将字段公之于众。
Map<String, ?>将转换为JSON对象;在您的示例中,字符串键将是分隔名。
https://stackoverflow.com/questions/45949472
复制相似问题