C# | Get a collection of keys in the StringDictionary
StringDictionary.Keys property is used to get a collection of keys in the StringDictionary.
Syntax:
public virtual System.Collections.ICollection Keys { get; }
Return Value: An ICollection that provides the keys in the StringDictionary.
Below given are some examples to understand the implementation in a better way:
Example 1:
// C# code to get a collection // of keys in the StringDictionary using System; using System.Collections; using System.Collections.Specialized; class GFG { // Driver code public static void Main() { // Creating a StringDictionary named myDict StringDictionary myDict = new StringDictionary(); // Adding key and value into the StringDictionary myDict.Add( "A" , "Apple" ); myDict.Add( "B" , "Banana" ); myDict.Add( "C" , "Cat" ); myDict.Add( "D" , "Dog" ); // To copy the StringDictionary values to // a one-dimensional Array instance at // the specified index. String[] myKeys = new String[myDict.Count]; myDict.Keys.CopyTo(myKeys, 0); // Getting a collection of keys // in the StringDictionary for ( int i = 0; i < myDict.Count; i++) { Console.WriteLine(myKeys[i] + " " + myDict[myKeys[i]]); } } } |
Output:
d Dog b Banana c Cat a Apple
Example 2:
// C# code to get a collection // of keys in the StringDictionary using System; using System.Collections; using System.Collections.Specialized; class GFG { // Driver code public static void Main() { // Creating a StringDictionary named myDict StringDictionary myDict = new StringDictionary(); // Adding key and value into the StringDictionary myDict.Add( "3" , "prime & odd" ); myDict.Add( "2" , "prime & even" ); myDict.Add( "4" , "non-prime & even" ); myDict.Add( "9" , "non-prime & odd" ); // To copy the StringDictionary values to // a one-dimensional Array instance at // the specified index. String[] myKeys = new String[myDict.Count]; myDict.Keys.CopyTo(myKeys, 0); // Getting a collection of keys // in the StringDictionary for ( int i = 0; i < myDict.Count; i++) { Console.WriteLine(myKeys[i] + " " + myDict[myKeys[i]]); } } } |
Output:
2 prime & even 3 prime & odd 9 non-prime & odd 4 non-prime & even
Note:
- The order of the keys in the ICollection is unspecified, but it is the same order as the associated values in the ICollection returned by the Values method.
- The returned ICollection is not a static copy. Instead, the ICollection refers back to the keys in the original StringDictionary. Therefore, changes to the StringDictionary continue to be reflected in the ICollection.
- Retrieving the value of this property is an O(1) operation.
Reference:
- https://docs.microsoft.com/en-us/dotnet/api/system.collections.specialized.stringdictionary.keys?view=netframework-4.7.2