public int getRGB(Object inData) {
     return (getAlpha(inData) << 24)
         | (getRed(inData) << 16)
         | (getGreen(inData) << 8)
         | (getBlue(inData) << 0);

 }


那么,这个return语句实际上是做什么的呢?转换了四个整数,但是返回什么?

最佳答案

它返回一个int,其第一个(MSB)字节为Alpha值,其第二个字节为Red值,其第三个字节为Green值,最后一个字节为Blue值。

 highest                              lowest
   bit                                 bit
    |--------|--------|--------|--------|
      Alpha     Red      Green    Blue
     (8 bits) (8 bits) (8 bits) (8 bits)

关于java - “((a << 24 | b << 16 | c << 8 | d)”是什么意思?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25436135/

10-10 12:47