tags:

views:

20

answers:

1

is there anything like this in JDK or Apache Commons (or in other 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;
    }
+3  A: 

Usually, you use some basic bit manipulation for this:

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

And because it is so short, it is usually inlined and not called as a method.

Christian Semrau
cool........ XD
Tom Brito
I had completely forgotten the bits manipulation exist
Tom Brito