Exercise 3: Accessing a Hashtable & Key Order — Possible Solution ==================================================================== TWO WAYS TO READ THE AGE VALUE ------------------------------ $person['Age'] - bracket access, using the key as a string. $person.Age - dot access, using the key as a property-style name. Both return the identical value, 30. WHY A PLAIN @{} HASHTABLE'S KEY ORDER ISN'T GUARANTEED ------------------------------ Per this chapter, a plain @{} hashtable does NOT guarantee that its keys stay in the order they were inserted - the underlying .NET Hashtable type is fundamentally a lookup structure optimized for fast key access, not an ordered sequence, so iterating or displaying its keys can come back in a different order than they were typed in. This is a genuine behavioral difference from an array, whose element order is always exactly the order the elements were placed in. WHAT FIXES IT ------------------------------ [ordered]@{} creates an ordered dictionary instead of a plain hashtable - it preserves insertion order reliably, and should be used whenever the order keys are displayed or iterated in actually matters. WHY THIS WORKS AS AN ANSWER ------------------------------ It correctly demonstrates both access styles (bracket and dot) returning the same value, correctly explains that a plain hashtable is an unordered lookup structure rather than an ordered sequence, and correctly names [ordered]@{} as the fix when insertion order needs to be preserved.