Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Advanced Dictionary Techniques | Dictionaries and Key-Value Collections
C# Lists & Collections

bookAdvanced Dictionary Techniques

When working with dictionaries in C#, you often need to update values, merge contents from multiple dictionaries, or handle situations where a key might not exist. Updating values in a dictionary is straightforward if you know the key exists: you can simply assign a new value to the desired key. However, if you are not sure whether a key is present, using methods like TryGetValue can help you avoid exceptions caused by missing keys.

Merging dictionaries is another common operation. When you want to combine two dictionaries, you must decide how to handle duplicate keys. You can choose to overwrite the existing value, skip the new value, or apply a custom rule for combining values. Handling missing keys gracefully and resolving conflicts during merging are essential for robust applications.

Program.cs

Program.cs

copy
1234567891011121314151617181920212223242526272829
using System; using System.Collections.Generic; namespace ConsoleApp { public class Program { public static void Main(string[] args) { var capitals = new Dictionary<string, string> { { "USA", "Washington, D.C." }, { "France", "Paris" }, { "Japan", "Tokyo" } }; string searchCountry = "Germany"; if (capitals.TryGetValue(searchCountry, out string capital)) { Console.WriteLine($"The capital of {searchCountry} is {capital}."); } else { Console.WriteLine($"No capital found for {searchCountry}."); } } } }

When you need to merge two dictionaries, you can use a loop to add entries from one dictionary into another. If a key already exists, you must decide whether to overwrite the value or keep the original. One common approach is to overwrite the existing value with the new one, ensuring that the merged dictionary has the latest data for each key.

Program.cs

Program.cs

copy
123456789101112131415161718192021222324252627282930
using System; using System.Collections.Generic; namespace ConsoleApp { public class Program { public static void Main(string[] args) { var scores = new Dictionary<string, int> { { "Alice", 80 }, { "Bob", 90 }, { "Charlie", 85 } }; var keys = new List<string>(scores.Keys); foreach (var name in keys) { scores[name] = scores[name] + 10; } foreach (var kvp in scores) { Console.WriteLine($"{kvp.Key}: {kvp.Value}"); } } } }

1. What does TryGetValue return if the key is not found?

2. How can you merge two dictionaries in C#?

3. Fill in the blanks to update all values in a Dictionary<string, int> by adding 10.

question mark

What does TryGetValue return if the key is not found?

Select the correct answer

question mark

How can you merge two dictionaries in C#?

Select the correct answer

question-icon

Fill in the blanks to update all values in a Dictionary<string, int> by adding 10.

in myDict.Keys{= myDict[] + 10;
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 2. Capítulo 4

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

bookAdvanced Dictionary Techniques

Deslize para mostrar o menu

When working with dictionaries in C#, you often need to update values, merge contents from multiple dictionaries, or handle situations where a key might not exist. Updating values in a dictionary is straightforward if you know the key exists: you can simply assign a new value to the desired key. However, if you are not sure whether a key is present, using methods like TryGetValue can help you avoid exceptions caused by missing keys.

Merging dictionaries is another common operation. When you want to combine two dictionaries, you must decide how to handle duplicate keys. You can choose to overwrite the existing value, skip the new value, or apply a custom rule for combining values. Handling missing keys gracefully and resolving conflicts during merging are essential for robust applications.

Program.cs

Program.cs

copy
1234567891011121314151617181920212223242526272829
using System; using System.Collections.Generic; namespace ConsoleApp { public class Program { public static void Main(string[] args) { var capitals = new Dictionary<string, string> { { "USA", "Washington, D.C." }, { "France", "Paris" }, { "Japan", "Tokyo" } }; string searchCountry = "Germany"; if (capitals.TryGetValue(searchCountry, out string capital)) { Console.WriteLine($"The capital of {searchCountry} is {capital}."); } else { Console.WriteLine($"No capital found for {searchCountry}."); } } } }

When you need to merge two dictionaries, you can use a loop to add entries from one dictionary into another. If a key already exists, you must decide whether to overwrite the value or keep the original. One common approach is to overwrite the existing value with the new one, ensuring that the merged dictionary has the latest data for each key.

Program.cs

Program.cs

copy
123456789101112131415161718192021222324252627282930
using System; using System.Collections.Generic; namespace ConsoleApp { public class Program { public static void Main(string[] args) { var scores = new Dictionary<string, int> { { "Alice", 80 }, { "Bob", 90 }, { "Charlie", 85 } }; var keys = new List<string>(scores.Keys); foreach (var name in keys) { scores[name] = scores[name] + 10; } foreach (var kvp in scores) { Console.WriteLine($"{kvp.Key}: {kvp.Value}"); } } } }

1. What does TryGetValue return if the key is not found?

2. How can you merge two dictionaries in C#?

3. Fill in the blanks to update all values in a Dictionary<string, int> by adding 10.

question mark

What does TryGetValue return if the key is not found?

Select the correct answer

question mark

How can you merge two dictionaries in C#?

Select the correct answer

question-icon

Fill in the blanks to update all values in a Dictionary<string, int> by adding 10.

in myDict.Keys{= myDict[] + 10;
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 2. Capítulo 4
some-alt