整数颜色color.getRGB得到是负数,解决方案

新手发帖,很多方面都是刚入门,有错误的地方请大家见谅,欢迎批评指正

    情景:ava.awt.color 下面的getRGB怎么得出的是负数???本来想通过getRGB得到一个整数,在另外的一个部分在根据这个整数构件一个color,因为参数划定只能能传整数!!!color通过什么方法得到一整数????

     

    每日一道理
爱心是一片照射在冬日的阳光,使贫病交迫的人感到人间的温暖;爱心是一泓出现在沙漠里的泉水,使濒临绝境的人重新看到生活的希望;爱心是一首飘荡在夜空的歌谣,使孤苦无依的人获得心灵的慰藉。

    解决方案:getRGB()返回默许 sRGB ColorModel 中表现颜色的 RGB 值。(24-31 位表现 alpha,16-23 位表现红色,8-15 位表现绿色,0-7 位表现蓝色)。

要得到详细R,G,B颜色分量得做个位移
// Color color
int rgb = color.getRGB();
int r = (rgb & 16711680) >> 16;
int g = (rgb & 65280) >> 8;
int b = (rgb & 255);

也可以直接应用Color的getRed(),getGreen(),getBlue()方法得到r,g,b.

文章结束给大家分享下程序员的一些笑话语录: 程序员打油诗   
  写字楼里写字间,写字间里程序员;
  程序人员写程序,又拿程序换酒钱。
  酒醒只在网上坐,酒醉还来网下眠;
  酒醉酒醒日复日,网上网下年复年。
  但愿老死电脑间,不愿鞠躬老板前;
  奔驰宝马贵者趣,公交自行程序员。
  别人笑我忒疯癫,我笑自己命太贱;
  不见满街漂亮妹,哪个归得程序员。

原文地址:https://www.cnblogs.com/jiangu66/p/3093485.html