首页 文章

如何解决Java中从double到int的类型不匹配错误

提问于
浏览
1

在我的班上,我们正在做一些颜色转换 . 我已经能够找出简单的颜色转换,如红色,蓝色,绿色,紫色和黄色,但我一直无法弄清楚如何制作橙色或棕色的颜色 . 我尝试乘以小数,例如g * 0.6但最后我得到一个类型不匹配(double而不是int) . 任何帮助将不胜感激,谢谢:)

public void toYellow() {
    //convert to yellow
    for(int y = 0; y < img.getHeight(); y++){
        for(int x = 0; x < img.getWidth(); x++){
            int p = img.getRGB(x,y);
            int a = (p>>24)&0xff;
            int r = (p>>16)&0xff;
            int g = (p>>8)&0xff;
            int b = p&0xff;
            //set blue to zero
            p = (a<<24) | (r<<16) | (g<<8) | 0;

            img.setRGB(x, y, p);
            setColor("Yellow");
        }
    }           
}

1 回答

  • 0

    使用 (int)(g*0.6) 将double转换回int

相关问题