diff --git a/csharp-fundamentals-maps.Main/Core.cs b/csharp-fundamentals-maps.Main/Core.cs index 8f4d84a..ea40321 100644 --- a/csharp-fundamentals-maps.Main/Core.cs +++ b/csharp-fundamentals-maps.Main/Core.cs @@ -49,8 +49,9 @@ in the createPerson method public string getValue(string key) { - - return string.Empty; + var dict = createPerson(); + + return dict.GetValueOrDefault(key); } @@ -64,7 +65,9 @@ in the provided dictionary */ public bool hasKey(Dictionary dictionary, string isitthere) { - return false; + var keyExists = dictionary.TryGetValue(isitthere, out var key); + + return keyExists; } @@ -78,7 +81,12 @@ public bool hasKey(Dictionary dictionary, string isitthere) */ public int getValueOrDefault(Dictionary dictionary, string isitthere) { - return 0; + var exists = dictionary.TryGetValue(isitthere, out var value); + + if (exists) + return value; + + return -1; } @@ -105,7 +113,14 @@ public List buildSecretPhrase(int[] numbers) map.Add(96, "nice"); // Write your code below this comment... - + foreach (var key in numbers) + { + var value = map.GetValueOrDefault(key); + + if (value == null) continue; + + results.Add(value); + } // // ...and above this comment return results; diff --git a/csharp-fundamentals-maps.Main/Extension.cs b/csharp-fundamentals-maps.Main/Extension.cs index 2deb96d..a03b8cb 100644 --- a/csharp-fundamentals-maps.Main/Extension.cs +++ b/csharp-fundamentals-maps.Main/Extension.cs @@ -16,7 +16,7 @@ public Extension() _planets = new Dictionary(); _planets.Add("Jupiter", 5.2f); _planets.Add("Uranus", 19.2f); - _planets.Add("Pluto", 39f); + // _planets.Add("Pluto", 39f); _planets.Add("Mercury", 0.39f); _planets.Add("Saturn", 9.54f); _planets.Add("Earth", 1f); @@ -36,7 +36,9 @@ public Dictionary LettersInName() // the planet name and the number of letters in its name // iterate the _planets using a foreach object to load the result dictionary. - + foreach (var planet in _planets) { + result.Add(planet.Key, planet.Key.Count()); + } return result; } @@ -52,7 +54,7 @@ public Dictionary OrderedPlanets() } public Dictionary OrderedPlanetsByDescending() { - return _planets.OrderBy(x => x.Value).ToDictionary(x => x.Key, x => x.Value); + return _planets.OrderByDescending(x => x.Value).ToDictionary(x => x.Key, x => x.Value); } //TODO: modify the OrderedPlanetsByDescending so it is not dictionary is not doing an OrderBy but OrderByDescending @@ -67,7 +69,9 @@ public Dictionary OrderedPlanetsByDescending() public string FurthestFromTheSun() { - return string.Empty; + var dict = OrderedPlanetsByDescending(); + var furthest = dict.Keys.FirstOrDefault(); + return furthest; } public string ClosestToTheSun() {