MEで、byte型変数2つを上位・下位ビットとして1つの整数にする処理なのですが

Byte b = new Byte( byteData[i] ); // 下位ビット
intData[i] = Integer.parseInt( b.toString(),16 );
b = new Byte( byteData[i+1] ); // 上位ビット
intData[i] += Integer.parseInt( b.toString(),16 )*16*16;
b = null;

こんな無理矢理感が否めない処理しか思いつかなかったのですが、
もっと気の利いた方法とかありませんでしょうか。
ご指南お願いします。