教えてください。
int<=>byte[]の変換ができません。

int resourceID = 55;
byte[] byteID = new byte[4];

byteID[0] = (byte)((resourceID >> 24) & 0xFF );
byteID[1] = (byte)((resourceID >> 16) & 0xFF );
byteID[2] = (byte)((resourceID >> 8) & 0xFF );
byteID[3] = (byte)(resourceID & 0xFF );

int inID = (((byteID[0] << 24) & 0xFF) | ((byteID[1] << 16) & 0xFF) |
((byteID[2] << 8) & 0xFF) | ((byteID[3]) & 0xFF));

これだと、resourceID=255までしか変換できません つД`)
256以上の数値はどうすれば良いのでしょうか??