How to Iterate Over a Dictionary of Dictionaries in C# - Step by Step Examples
How to Iterate Over a Dictionary of Dictionaries in C# ?
Answer
To iterate over a dictionary of dictionaries in C#, you can use nested `foreach` loops to iterate through both the outer dictionary and the inner dictionaries. This allows you to access and process each key-value pair in the nested dictionaries.
✐ Examples
1 Iterating Over a Dictionary of Dictionaries Using Nested `foreach` Loops
We can iterate over a dictionary of dictionaries in C# using nested `foreach` loops. This example demonstrates how to declare and initialize a dictionary of dictionaries, use nested `foreach` loops to iterate through the outer and inner dictionaries, and print each key-value pair.
For example,
- We start by including the necessary namespace:
using System.Collections.Generic;
. - We declare and initialize a dictionary of dictionaries named
outerDict
with integer keys and string values. - We use nested `foreach` loops to iterate through the outer and inner dictionaries.
- We print each key-value pair.
C# Program
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
// Declare and initialize a dictionary of dictionaries
Dictionary<string, Dictionary<string, int>> outerDict = new Dictionary<string, Dictionary<string, int>>
{
{ "A", new Dictionary<string, int> { { "X", 1 }, { "Y", 2 } } },
{ "B", new Dictionary<string, int> { { "Z", 3 } } }
};
// Iterate over the dictionary of dictionaries using nested foreach loops
Console.WriteLine("Iterating over dictionary of dictionaries:");
foreach (var outerKvp in outerDict)
{
Console.WriteLine("Outer Key: {0}", outerKvp.Key);
foreach (var innerKvp in outerKvp.Value)
{
Console.WriteLine(" Inner Key: {0}, Value: {1}", innerKvp.Key, innerKvp.Value);
}
}
}
}
Output
Iterating over dictionary of dictionaries: Outer Key: A Inner Key: X, Value: 1 Inner Key: Y, Value: 2 Outer Key: B Inner Key: Z, Value: 3
2 Iterating Over a Dynamically Created Dictionary of Dictionaries
We can iterate over a dynamically created dictionary of dictionaries in C# using nested `foreach` loops. This example demonstrates how to declare a dictionary of dictionaries, add inner dictionaries dynamically, add key-value pairs to the inner dictionaries, use nested `foreach` loops to iterate through the outer and inner dictionaries, and print each key-value pair.
For example,
- We start by including the necessary namespace:
using System.Collections.Generic;
. - We declare a dictionary of dictionaries named
outerDict
. - We add inner dictionaries dynamically and add key-value pairs to the inner dictionaries.
- We use nested `foreach` loops to iterate through the outer and inner dictionaries.
- We print each key-value pair.
C# Program
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
// Declare a dictionary of dictionaries
Dictionary<string, Dictionary<string, int>> outerDict = new Dictionary<string, Dictionary<string, int>>();
// Add inner dictionaries dynamically
outerDict["A"] = new Dictionary<string, int>();
outerDict["B"] = new Dictionary<string, int>();
// Add key-value pairs to the inner dictionaries
outerDict["A"]["X"] = 1;
outerDict["A"]["Y"] = 2;
outerDict["B"]["Z"] = 3;
// Iterate over the dictionary of dictionaries using nested foreach loops
Console.WriteLine("Iterating over dictionary of dictionaries:");
foreach (var outerKvp in outerDict)
{
Console.WriteLine("Outer Key: {0}", outerKvp.Key);
foreach (var innerKvp in outerKvp.Value)
{
Console.WriteLine(" Inner Key: {0}, Value: {1}", innerKvp.Key, innerKvp.Value);
}
}
}
}
Output
Iterating over dictionary of dictionaries: Outer Key: A Inner Key: X, Value: 1 Inner Key: Y, Value: 2 Outer Key: B Inner Key: Z, Value: 3
Summary
In this tutorial, we learned How to Iterate Over a Dictionary of Dictionaries in C# language with well detailed examples.
More C# Dictionaries Tutorials
- How to create an Empty Dictionary in C# ?
- How to create a Dictionary with Initial Key-Value Pairs in C# ?
- How to Print a Dictionary in C# ?
- How to Add a Key-Value Pair to a Dictionary in C# ?
- How to Set a Default Value for a Key in a Dictionary in C# ?
- How to Update the Value for a Key in a Dictionary in C# ?
- How to Check if a Dictionary is Empty in C# ?
- How to Check if a Key Exists in a Dictionary in C# ?
- How to Check if a Value Exists in a Dictionary in C# ?
- How to Get the Value Associated with a Key in a Dictionary in C# ?
- How to Remove a Key-Value Pair from a Dictionary in C# ?
- How to Remove Key-Value Pairs from a Dictionary Based on Values in C# ?
- How to Clear all Key-Value Pairs from a Dictionary in C# ?
- How to Iterate over Keys in a Dictionary in C# ?
- How to Iterate over Values in a Dictionary in C# ?
- How to Iterate over Entries (Key-Value Pairs) in a Dictionary in C# ?
- How to Get the Size (Number of Key-Value Pairs) of a Dictionary in C# ?
- How to Convert a Dictionary to an Array of Keys in C# ?
- How to Convert a Dictionary to an Array of Values in C# ?
- How to Convert a Dictionary to an Array of Key-Value Pairs in C# ?
- How to Merge Two Dictionaries in C# ?
- How to Clone a Dictionary in C# ?
- How to Check if Two Dictionaries are Equal in C# ?
- How to Sort a Dictionary by Keys in C# ?
- How to Sort a Dictionary by Values in C# ?
- How to Filter a Dictionary Based on Keys in C# ?
- How to Filter a Dictionary Based on Values in C# ?
- How to Reduce Values in a Dictionary to a Single Value in C# ?
- How to Convert an Array of Key-Value Pairs to a Dictionary in C# ?
- How to Convert a Dictionary to a JSON String in C# ?
- How to Convert a JSON String to a Dictionary in C# ?
- How to Swap Keys and Values in a Dictionary in C# ?
- How to Create a Dictionary of Dictionaries in C# ?
- How to Iterate Over a Dictionary of Dictionaries in C# ?