此代码创建标准Java颜色的列表,然后返回它们。
是否有更好的方法可以达到相同的效果。
public class Color_list {
Color[] mycolors;
Color_list() {
mycolors = new Color[] { Color.BLACK, Color.BLUE, Color.CYAN,
Color.DARK_GRAY, Color.GRAY, Color.GREEN, Color.LIGHT_GRAY,
Color.MAGENTA, Color.ORANGE, Color.PINK, Color.RED,
Color.WHITE, Color.YELLOW };
}
public Color returncol(int selectedcol) {
return mycolors[selectedcol];
}
}
答案 0 :(得分:0)
因为这些值不代表枚举,所以没有简单的方法以列表类型的方式获取它们。但是,您可以使用反射,并获取所有静态成员的列表,这些成员是字段,其名称与"^[A-Z_]+$"
匹配。
或者,您可以创建自己的枚举:
public enum StandardColor {
BLACK(Color.BLACK)
// ...
;
private StandardColor(Color color) {
// null checking if you want
this.color = color;
}
public Color getColor() {
return color;
}
private final Color color;
}