Яка різниця між post і pre increment у циклі?
Pre increment безпосередньо повертає збільшене значення, але post increment потрібно скопіювати значення в тимчасову змінну, збільшити оригінал, а потім повернути попередню копію.31 березня 2018 р
Єдина відмінність полягає в порядку операцій між збільшенням змінної та значенням, яке повертає оператор. Отже, в основному ++i повертає значення після його збільшення, тоді як ++i повертає значення до його збільшення. Зрештою, в обох випадках значення i буде збільшено.
Цикл Pretest перевіряє свій стан перед кожною ітерацією. Цикл після тестування перевіряє свій стан після кожної ітерації. Післятестовий цикл завжди виконується принаймні один раз.
Попереднє збільшення (++i) –> Перед присвоєнням значення змінній значення збільшується на 1. Постінкремент (i++) –> Після присвоєння значення змінній значення збільшується. Схоже, що обидва оператори роблять те саме, тобто збільшують значення на одиницю.
Java допускає дві форми інкременту: пре-інкремент і пост-інкремент. Попереднє збільшення ( ++i ) збільшує значення i перед використанням значення у виразі. Постінкремент ( i++ ) збільшує значення після обчислення виразу.
Підсумовуючи, хоча між “++i” та “i++” можуть бути деякі відмінності в продуктивності, зазвичай рекомендується використовувати “++i”, якщо вам не потрібна семантика постфікса. Сподіваюся, ця інформація буде для вас корисною.
Pre increment безпосередньо повертає збільшене значення, але post increment потрібно скопіювати значення в тимчасову змінну, збільшити оригінал, а потім повернути попередню копію.