如何在Java中打印颜色的字符串表示形式
我有一个大小为n的颜色数组。在我的程序中,团队数量总是<= n,我需要为每个团队分配唯一的颜色。这是我的颜色数组:
private static Color[] TEAM_COLORS = {Color.BLUE, Color.RED, Color.CYAN, Color.GREEN, Color.ORANGE, Color.PINK};
当我在控制台中打印有关播放器的信息时,我想打印与它们关联的颜色。当我打印颜色时,我得到
java.awt.Color[r=...,g=...,b=...].
我知道这就是Java打印颜色的方式。我想知道是否有一种方法可以代替打印蓝色,红色等(因此是预定义的颜色字符串)。
回答:
通过将名称也添加到枚举来扩展@Jon_Skeet答复。
public enum NamedColor { BLUE(Color.BLUE, "Blue"),
RED(Color.RED, "Red"),
...;
private final Color awtColor;
private final String colorName;
private NamedColor(Color awtColor, String name) {
this.awtColor = awtColor;
this.colorName = name;
}
public Color getAwtColor() {
return awtColor;
}
public String getColorName() {
return colorName;
}
}
注意:如果对此投票,也请@Jon_Skeet答复,因为这是该问题的扩展。
以上是 如何在Java中打印颜色的字符串表示形式 的全部内容, 来源链接: utcz.com/qa/411437.html