我正在尝试将颜色值存储在Java数组中,但我知道这些值存储为字符串,
String[] colorarray = {"Color.yellow","Color.red","Color.blue"};
现在,我无法访问此数组元素来设置颜色,即
g.setColor(colorarray[0]);
因为数组中的所有值都是字符串。 我怎么能将这些值转换为常量?
答案 0 :(得分:11)
使用
Color[] colorArray = {Color.YELLOW, Color.RED, Color.BLUE};
答案 1 :(得分:7)
直截了当,使用它:
Color[] colorarray = {Color.YELLOW, Color.RED, Color.BLUE};
答案 2 :(得分:2)
如果您可以控制数组,请务必将其更改为Color
的数组,如其他几个人所建议的那样。
Color[] colorArray = {Color.YELLOW, Color.RED, Color.BLUE};
如果您无法控制阵列并且必须按原样使用它,则需要执行以下两项操作之一:
Color
类的静态成员
(快速谷歌搜索将为您提供大量有关如何执行此操作的示例,因此我不会在此处进行讨论)Color.XXX
,其中XXX
是颜色的名称。 (这也可以使用一个大的if-else块来完成,但不会那么干净)另一个快速注释 - 按照惯例,Java中的变量名称是以小写字母开头的camelCase。这有助于使您的代码更具可读性。 (类名是CamelCase,包名是lower.case)