java.awt.color到java.lang.string的转换
我想将java.awt.color对象转换为字符串java.awt.color到java.lang.string的转换,java,Java,我想将java.awt.color对象转换为字符串 Color c = new Color(255,0,0); System.out.print(Color.toString); 它打印java.awt.Color[r=255,g=0,b=0] 现在我想解析这个字符串并解码颜色名称,例如蓝色等 我在想有没有其他方法可以直接把这个颜色转换成字符串 提前谢谢 编辑:我想将此颜色值存储在数据库中。我应该将其存储为字符串还是RGB值?否。至少因为: 很少有rgb组合具有颜色名称 java并不是在所有
Color c = new Color(255,0,0);
System.out.print(Color.toString);
它打印java.awt.Color[r=255,g=0,b=0]
现在我想解析这个字符串并解码颜色名称,例如蓝色等
我在想有没有其他方法可以直接把这个颜色转换成字符串
提前谢谢
编辑:我想将此颜色值存储在数据库中。我应该将其存储为字符串还是RGB值?否。至少因为:
- 很少有rgb组合具有颜色名称
- java并不是在所有支持语言环境的语言中都拥有颜色名称
Color
中的预定义常量,并检查其中是否有与给定颜色相同的RGB。如果是,请打印姓名
至于您添加的问题,请将其存储为RGB值而不是字符串。您可以使用方法
getRed()
、getBlue()
、getGreen()
和getAlpha()
来获取颜色的组件,而不是解析从toString()
返回的字符串。您还可以将颜色与java.awt.color中的静态字段进行比较(使用Equals
)您必须从商定的颜色名称列表开始,例如。然后构建一个映射)
从中获取名称。您可以使用HTML4 basic和extends color关键字。他们应该可以使用如下表格直接从rgb值中获取:为什么要获取组件?例如Color.blue.equals(新颜色(0,0,255))
。我的意思是,获取颜色的组件,而不是解析从java.awt.Color.toString()返回的字符串。
“我应该将其存储为字符串还是RGB值?”肯定是后者。