0

JDK または Apache Commons (または他の jar) にこのようなものはありますか?

/**
 * Return the integer positive value of the byte. (e.g. -128 will return
 * 128; -127 will return 129; -126 will return 130...)
 */
public static int toPositiveInt(byte b) {
int intV = b;
 if (intV < 0) {
     intV = -intV;
     int diff = ((Byte.MAX_VALUE + 1) - intV) + 1;
     intV = Byte.MAX_VALUE + diff;
 }
 return intV;
    }
4

1 に答える 1

3

通常、これには基本的なビット操作を使用します。

public static int toPositiveInt(byte b) {
return b & 0xFF;
}

また、非常に短いため、通常はインライン化され、メソッドとしては呼び出されません。

于 2010-04-14T20:54:58.400 に答える