const
C1 = 74102;
C2 = 12337;

function Encrypt(const S: String; Key: Word): String;
var
I: byte;
FirstResult : String;
begin
SetLength(FirstResult, Length(S)); // 문자열의 크기를 설정
for I := 1 to Length(S) do begin
FirstResult[I] := char(byte(S[I]) xor (Key shr 8));
Key := (byte(FirstResult[I]) + Key) * C1 + C2;
end;
Result := ValueToHex(FirstResult);
end;

위의 코드 중에서 char, byte, xor, shr 에 해당하는 연산을 자바에서는 어떻게 할 수 있을까요?
안드로이드에서 어떻게 이 연산을 처리해야 좋을지 조언 부탁드립니다.

감사합니다. 미리~