From 8e9717cd1b1468fc2c281cf7fff7e2232e9d9030 Mon Sep 17 00:00:00 2001 From: omkar hole Date: Sat, 27 Dec 2025 23:23:47 +0530 Subject: [PATCH 1/3] Create update.md --- .../dart/concepts/map/terms/update/update.md | 98 +++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 content/dart/concepts/map/terms/update/update.md diff --git a/content/dart/concepts/map/terms/update/update.md b/content/dart/concepts/map/terms/update/update.md new file mode 100644 index 00000000000..c91c9ab2cbb --- /dev/null +++ b/content/dart/concepts/map/terms/update/update.md @@ -0,0 +1,98 @@ +--- +Title: '.update()' +Description: 'Updates the value for a specific key in a Map using a provided function.' +Subjects: + - 'Computer Science' + - 'Code Foundations' +Tags: + - 'Dart' + - 'Methods' + - 'Map' +CatalogContent: + - 'learn-dart' + - 'paths/computer-science' +--- + +In Dart, the **`.update()`** method is used to update the value for a specific key in a `Map`. It takes a key and a function that computes the new value based on the existing value. If the key does not exist, an optional `ifAbsent` function can be provided to add a new key-value pair. + +## Syntax + +```pseudo +mapVariable.update(key, (value) => newValue) +``` + +- `mapVariable`: The `Map` to be updated. +- `key`: The key whose value needs to be updated. +- `value`: The current value associated with the key. +- `newValue`: The new value to replace the existing value. + +An optional `ifAbsent` parameter can be used to add a key if it does not exist: + +```pseudo +mapVariable.update(key, (value) => newValue, ifAbsent: () => defaultValue) +``` + +- `ifAbsent`: A function that returns a default value if the key is not found. + +## Example 1 + +In the following example, the `.update()` method is used to update the value for an existing key in a `Map`: + +```dart +void main() { + Map fruits = {'Apple': 5, 'Banana': 3}; + + // Update the value for 'Apple' + fruits.update('Apple', (value) => value + 2); + + print(fruits); +} +``` + +Here is the output for the above example: + +```shell +{Apple: 7, Banana: 3} +``` + +## Example 2 + +The `.update()` method can use the `ifAbsent` parameter to add a key if it does not exist: + +```dart +void main() { + Map fruits = {'Apple': 5}; + + // 'Orange' does not exist, so ifAbsent adds it + fruits.update('Orange', (value) => value, ifAbsent: () => 10); + + print(fruits); +} +``` + +Here is the output for the above example: + +```shell +{Apple: 5, Orange: 10} +``` + +## Example 3 + +The `.update()` method can also work with different [data types](https://www.codecademy.com/resources/docs/dart/data-types) for keys and values: + +```dart +void main() { + Map students = {1: 'Alice', 2: 'Bob'}; + + // Update the value for key 1 + students.update(1, (value) => '$value Smith'); + + print(students); +} +``` + +Here is the output for the above example: + +```shell +{1: Alice Smith, 2: Bob} +``` From a89c3a7a0cbe9f9b34250d8cd1d7dacc2e2c1015 Mon Sep 17 00:00:00 2001 From: Omkar Hole <182200831+omkarhole@users.noreply.github.com> Date: Sat, 27 Dec 2025 23:31:51 +0530 Subject: [PATCH 2/3] Update update.md --- content/dart/concepts/map/terms/update/update.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/dart/concepts/map/terms/update/update.md b/content/dart/concepts/map/terms/update/update.md index c91c9ab2cbb..ab24a360395 100644 --- a/content/dart/concepts/map/terms/update/update.md +++ b/content/dart/concepts/map/terms/update/update.md @@ -2,8 +2,8 @@ Title: '.update()' Description: 'Updates the value for a specific key in a Map using a provided function.' Subjects: - - 'Computer Science' - 'Code Foundations' + - 'Computer Science' Tags: - 'Dart' - 'Methods' @@ -64,7 +64,7 @@ void main() { Map fruits = {'Apple': 5}; // 'Orange' does not exist, so ifAbsent adds it - fruits.update('Orange', (value) => value, ifAbsent: () => 10); + fruits.update('Orange', (value) => value + 5, ifAbsent: () => 10); print(fruits); } From d71c00bda40222c6bc53dd9241698266c25f320f Mon Sep 17 00:00:00 2001 From: Mamta Wardhani Date: Thu, 1 Jan 2026 12:59:25 +0530 Subject: [PATCH 3/3] minor fixes --- .../dart/concepts/map/terms/update/update.md | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/content/dart/concepts/map/terms/update/update.md b/content/dart/concepts/map/terms/update/update.md index ab24a360395..34f7690ae50 100644 --- a/content/dart/concepts/map/terms/update/update.md +++ b/content/dart/concepts/map/terms/update/update.md @@ -18,21 +18,18 @@ In Dart, the **`.update()`** method is used to update the value for a specific k ## Syntax ```pseudo -mapVariable.update(key, (value) => newValue) +map.update(key, update, ifAbsent) ``` -- `mapVariable`: The `Map` to be updated. -- `key`: The key whose value needs to be updated. -- `value`: The current value associated with the key. -- `newValue`: The new value to replace the existing value. +**Parameters:** -An optional `ifAbsent` parameter can be used to add a key if it does not exist: +- `key`: The key whose value is to be updated. +- `update`: A function that takes the current value associated with `key` and returns the new value. +- `ifAbsent` (optional): A function that provides a value to insert if `key` does not exist in the map. -```pseudo -mapVariable.update(key, (value) => newValue, ifAbsent: () => defaultValue) -``` +**Return value:** -- `ifAbsent`: A function that returns a default value if the key is not found. +Returns the new value associated with `key` after the update or insertion. ## Example 1