Лучший способ сделать несколько манипуляций / беззнаковых байт через используя INT с. Несмотря на то, что они подписываются у них есть много запасных биты (32 всего) , чтобы рассматривать в качестве знака байта. Кроме того , все математические операторы преобразуют меньшие фиксированной точности чисел в Int . Пример:
short a = 1s;
short b = 2s;
int c = a + b; // the result is up-converted
short small = (short)c; // must cast to get it back to short
Из-за этого лучше просто придерживаться целого и маскировать его, чтобы получить биты, которые вы заинтересованы в примере.:
int a = 32;
int b = 128;
int foo = (a + b) | 255;
Вот еще информация о Java примитивных типов http://mindprod.com/jgloss/primitive.html
Одно последнее замечание тривиально, есть один неподписанный фиксированной точностью и в Java. Это символ примитивно.