RGB 色值与十六进制色值互转

本文介绍如何实现RGB颜色值与十六进制颜色值之间的相互转换,并提供具体的Java代码示例。对于需要处理颜色值的应用场景非常有用。

开发中时常遇到色值转换问题,记录下这几行代码,方便自己也方便看到此博客的你。

RGB 转 十六进制色值

RGB:分别对应红绿蓝三种色值,每个值的取值范围在 [0,255] 之间的整数。

转换方法:

String hex = String.format("#%02X%02X%02X", Integer.parseInt(r),
                        Integer.parseInt(g), Integer.parseInt(b));

转出结果形如:#2E6FDD,如果你想要字母小写,只需要将上面 format() 第一个参数中的 X 换成小写 x 即可。

十六进制色值转 RGB(ARGB)

  1. 先转换成 int 类型
int colorInt = Color.parseColor(hex);
  1. 再对这个 int 值进行转换操作
/**
     * 十六进制转 ARGB/RGB
     * <p>
     * 如果不需要 alpha 值 注释掉即可
     *
     * @param color
     * @return
     */
    public static String changeArgb(int color) {
        int alpha = (color & 0xff000000) >>> 24;
        int red = (color & 0x00ff0000) >> 16;
        int green = (color & 0x0000ff00) >> 8;
        int blue = (color & 0x000000ff);

        return "A:" + alpha + " R:" + red + " G:" + green + " B:" + blue;
    }

总结

  • 写博客的首要目的是为了自己技术成长
  • 坚持每个月有博客更新,将会收获不止博客所写的东西
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

code小生

有头像,我们容易成为朋友

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值