【发布时间】:2017-09-11 16:20:20
【问题描述】:
我知道将颜色转换为其 RGB 的公式。 例如。
Color c=new Color(100,100,100);
Int rgb1= c.getRed()*65536+c.getGreen()*256+c.getBlue();
这就是我们获得单个 RGB 值的方式。
使用java编程
int rgb2=c.getRGB();
当我比较这两个 rgb1 和 rgb2 时,它们显示出不同的值。 我的第一个方程式有什么问题。请解决我的问题。谢谢
【问题讨论】:
-
getRead() 返回什么?
-
对不起它的 getRed()。我已经更正了。
-
附带说明,左移
a << b在数学上等价于乘法a * 2^b。由于您使用的是打包字节而不是实际数字,因此将这些乘法作为左移进行操作会更惯用。(red << 16) | (green << 8) | blue
标签: java