Назад к вопросам
Альфа-Банк
Junior — Middle
65
Какие операции и возможности предоставляет класс AtomicInteger в Java?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Класс AtomicInteger в Java предоставляет атомарные операции над целочисленным значением, что позволяет безопасно изменять число в многопоточной среде без использования синхронизации (synchronized). Основные возможности:
- Получение текущего значения (
get()). - Установка нового значения (
set(int newValue)). - Атомарное сравнение и установка (
compareAndSet(expectedValue, newValue)). - Инкремент и декремент с возвратом нового или старого значения (
incrementAndGet(),getAndIncrement(),decrementAndGet(),getAndDecrement()). - Добавление значения с возвратом нового или старого значения (
addAndGet(int delta),getAndAdd(int delta)).
Пример использования:
import java.util.concurrent.atomic.AtomicInteger;
AtomicInteger counter = new AtomicInteger(0);
// Увеличиваем значение на 1 и получаем новое значение
int newValue = counter.incrementAndGet();
// Атомарно сравниваем и устанавливаем
boolean updated = counter.compareAndSet(1, 10);