Представьте, что у вас есть стек, определенный как массив, такой как:
S = [ 1, 2, 3, 4, 5 ]
Стеки идут последними, первыми идут.Верхняя переменная всегда должна быть индексом элемента стека «последний в», в данном случае top = 4
, потому что последнее число в 5
и имеет индекс 4
.
Что это делаетназначить содержимое S[top]
на data
, затем присвоить Integer.MIN_VALUE
на S[top]
для его «очистки», а затем уменьшить top на 1.
Эта строка: S[top--] = Integer.MIN_VALUE;
может быть переписанаследующим образом:
S[top] = Integer.MIN_VALUE;
top = top - 1;
Я думаю, что конечной целью является очистка старых значений в стеке и присвоение им значений по умолчанию без изменения размера массива.
После того, как метод pop был выполнен, вот результат: S: [ 1, 2, 3, 4, -2147483648 ]
и top: 3
и последний элемент в стеке будет 4
.
Надеюсь, это имеет смысл.