РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
383 of 1163 menu

Метод replace

Метод replace класса HashMap заменяет значение, связанное с указанным ключом. Первым параметром метод принимает ключ, значение которого нужно заменить. Вторым параметром передается новое значение. Если ключ отсутствует в коллекции, замена не происходит. Существует также перегрузка метода, которая принимает три параметра: ключ, ожидаемое старое значение и новое значение. В этом случае замена выполняется только тогда, когда текущее значение совпадает с ожидаемым. Метод возвращает предыдущее значение, связанное с ключом, либо null, если ключа не было в коллекции или замена не удалась.

Синтаксис

map.replace(key, newValue) map.replace(key, oldValue, newValue)

Пример

Давайте создадим коллекцию HashMap и заменим значение по существующему ключу:

import java.util.HashMap; public class Main { public static void main(String[] args) { HashMap<String, Integer> map = new HashMap<>(); map.put("a", 1); map.put("b", 2); map.put("c", 3); Integer res = map.replace("b", 20); System.out.println(res); System.out.println(map); } }

Результат выполнения кода:

2 {a=1, b=20, c=3}

Пример

Давайте попробуем заменить значение по ключу, которого нет в коллекции:

import java.util.HashMap; public class Main { public static void main(String[] args) { HashMap<String, Integer> map = new HashMap<>(); map.put("a", 1); map.put("b", 2); map.put("c", 3); Integer res = map.replace("d", 40); System.out.println(res); System.out.println(map); } }

Результат выполнения кода:

null {a=1, b=2, c=3}

Пример

Давайте используем перегрузку с тремя параметрами и заменим значение только при совпадении ожидаемого старого значения:

import java.util.HashMap; public class Main { public static void main(String[] args) { HashMap<String, Integer> map = new HashMap<>(); map.put("a", 1); map.put("b", 2); map.put("c", 3); boolean res1 = map.replace("b", 2, 20); boolean res2 = map.replace("c", 5, 30); System.out.println(res1); System.out.println(res2); System.out.println(map); } }

Результат выполнения кода:

true false {a=1, b=20, c=3}

Смотрите также

  • класс HashMap,
    который хранит пары ключ-значение
  • метод put,
    который добавляет пару ключ-значение
  • метод get,
    который возвращает значение по ключу
  • метод remove,
    который удаляет пару по ключу
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить