String.format () и шестнадцатеричные числа в Java
Я пытаюсь выяснить почемуString.format()
ведет себя так, как он делает.
Контекст: Класс системного программирования, написание ассемблера.
В объектном файле есть шестнадцатеричное поле из 5 символов, которое я создаю из значения.
Пробовал с помощью:String.format("%05X", decInt);
Это работает как предназначено для положительных чисел (11 ->0000B
) Однако это не работает для отрицательных чисел (-1 ->FFFFFFFF
вместоFFFFF
)
Я полагаю, я мог бы просто взять подстроку из последних 5 символов, но я все же хотел бы выяснить, почему она так себя ведет.