DotNet-101-CSharpFundamentals
  • Introduction
  • Part 0: Solution Setup
    • 1.0: Solution Setup
  • Part 1: Data Types
    • 1.0: Variables
    • 1.1: Data Types
    • 1.2: Data Types Table
    • 1.3: Challenge Answers
    • 1.4: Strings
    • 1.5: String Challenges
    • 1.6: Challenge Answers
    • 1.7: Integers
    • 1.8: Type Conversion
  • Part 2: Boolean Logic And Conditionals
    • 2.0: Boolean Type
    • 2.1: Boolean Logic
    • 2.2: Boolean Challenges
    • 2.3: Challenge Answers
    • 2.4: if, else if, else
    • 2.5: Switch Statements
    • 2.6: Ternary Operators
  • Part 3: Objects, Methods, C# Fundamentals
    • 3.0 Objects
    • 3.1 Properties
      • Challenge Answers
    • 3.2 Methods
      • Challenge Answers
    • 3.3 Method-Overloading
    • 3.4 Constructors
      • Challenge Answers
    • 3.5 Access Modifiers
  • Part 4: Collections Arrays Control Flow
    • 4.0 Arrays
    • 4.1 Loops
    • 4.2 Dictionaries
    • Challenge Answers
    • 4.3 List
    • 4.3a: Challenge Answers
  • Part 5: Inheritance/More On Object Oriented Programming
    • 5.0 Inheritance
    • 5.1 Polymorphism
    • 5.2 Encapsulation
    • 5.3 Getters And Setters
    • 5.4 Exception Handling
  • Part 6: Structs
    • 6.0 Structs
  • Part 7: Enums
    • 7.0 Enums
  • Part 8: Null Coalescing Operator
    • 8.0 Null Coalescing Operator
  • Part 9: Interfaces
    • 9.0 Interfaces
    • 9.1 Rules
    • 9.2 Code With Intent
  • Part 10: More C#
    • 10.0 DateTime
    • 10.1-LINQ
    • Challenge Answers
  • Part 11: Reference and Value Types
    • 11.0 Reference & Value Types
  • Eleven Fifty Style Guide
Powered by GitBook
On this page
  • File Location
  • Visualization
  • Discussion
  • Dictionary Initialization
  • Another Example
  • Challenges:
  • Bronze
  • Silver
  • Gold
  1. Part 4: Collections Arrays Control Flow

4.2 Dictionaries

In C#, a dictionary is similar to Webster's dictionary. The C# dictionary is similar by using a collection of Keys and Values, where the key is like a word and the value is like a definition.

File Location

  1. Right click on your solution

  2. Go to Add > New Project and select Console App (.NET Framework)

  3. Name it Dictionaries

Visualization

Add the following code to the Program.cs file to practice dictionaries:

    class Program
    {
        static void Main(string[] args)
        {
//          1             2            3     4
            IDictionary<int, string> dict = new Dictionary<int, string>();
//           5     6    7
            dict.Add(1,"One");
            dict.Add(2,"Two");
            dict.Add(3,"Three");
        }
    }
  1. Declaring that you are building a dictionary

  2. The parameter types for your dictionary. A related int and string value

  3. The name of your dictionary

  4. Instantiation of a new dictionary

  5. Accessing your dictionary by just typing the name

  6. Using the .Add() function to begin adding data to your dictionary

  7. Key/Value pairs you are adding to your dictionary

Discussion

Dictionary<TKey, TValue> is a generic collection included in the System.Collection.Generics namespace. TKey denotes the type of key and TValue is the type of value.

Dictionary Initialization

A dictionary can be initialized with a variable of IDictionary<Tkey, TValue> or Dictionary<TKey, TValue>

IDictionary<int, string> dict = new Dictionary<int, string>();

or

Dictionary<int, string> dict = new Dictionary<int, string>();

In the above example, we have specified types of key and value while declaring a dictionary object. An int is a type of key and string is a type of value that will be stored into a dictionary object named dict. You can use any valid C# data type for keys and values.

Another Example

Add the following code to your Program.cs file:

 class Program
    {
        static void Main(string[] args)
        {
            IDictionary<string, string> goldenGirls = new Dictionary<string, string>();
            goldenGirls.Add("Rose", "Sweet");
            goldenGirls.Add("Dorothy", "Sharp");
            goldenGirls.Add("Blanche", "Southern");
            goldenGirls.Add("Sophia", "Sassy");

            foreach (KeyValuePair<string, string> pair in goldenGirls)
            {
                Console.WriteLine("{0}: {1}", pair.Key, pair.Value);
            }
        }
    }

We made a dictionary called goldenGirls and added 4 elements to it with a string key and string value. Then printed each key/value pair to the console using a for each loop.

Challenges:

Bronze

  • Create a dictionary of your top five TV shows as your key and your favorite character as the value

Silver

  • Create a dictionary that uses arrays for the values

Gold

  • Use the previous dictionary and print the key/valur pairs

Previous4.1 LoopsNextChallenge Answers

Last updated 7 years ago

Lists

Answers
Next: