String.format () и шестнадцатеричные числа в Java

Я пытаюсь выяснить почемуString.format() ведет себя так, как он делает.

Контекст: Класс системного программирования, написание ассемблера.

В объектном файле есть шестнадцатеричное поле из 5 символов, которое я создаю из значения.

Пробовал с помощью:String.format("%05X", decInt);

Это работает как предназначено для положительных чисел (11 ->0000B) Однако это не работает для отрицательных чисел (-1 ->FFFFFFFF вместоFFFFF)

Я полагаю, я мог бы просто взять подстроку из последних 5 символов, но я все же хотел бы выяснить, почему она так себя ведет.

Ответы на вопрос(2)

Ваш ответ на вопрос