From 6b5052cc8b9fb8d7bea79ac5f6ae9aec9a376e13 Mon Sep 17 00:00:00 2001 From: IvanC Date: Sun, 7 Mar 2021 12:10:00 +0100 Subject: [PATCH] My solution. Ivanc --- .../exercise_solutions/ivanc/WordAggregator.scala | 12 ++++++++++++ .../exercise_solutions/ivanc/WordCounter.scala | 11 +++++++++++ 2 files changed, 23 insertions(+) create mode 100644 src/main/tv/codely/scala_intro_examples/lesson_08_collections/exercise_solutions/ivanc/WordAggregator.scala create mode 100644 src/main/tv/codely/scala_intro_examples/lesson_08_collections/exercise_solutions/ivanc/WordCounter.scala diff --git a/src/main/tv/codely/scala_intro_examples/lesson_08_collections/exercise_solutions/ivanc/WordAggregator.scala b/src/main/tv/codely/scala_intro_examples/lesson_08_collections/exercise_solutions/ivanc/WordAggregator.scala new file mode 100644 index 0000000..74482da --- /dev/null +++ b/src/main/tv/codely/scala_intro_examples/lesson_08_collections/exercise_solutions/ivanc/WordAggregator.scala @@ -0,0 +1,12 @@ +package tv.codely.scala_intro_examples.lesson_08_collections.exercise_solutions.ivanc + +final class WordAggregator { + // @ToDo: Here you have your exercise! + // @see tv.codely.scala_intro_examples.lesson_08_collections.WordAggregatorSpec + def aggregateWords(text: String): Map[String, Int] = { + if(text.size > 0) + text.toLowerCase.split(" ").groupBy(identity).mapValues(_.size) + else + Map().empty + } +} diff --git a/src/main/tv/codely/scala_intro_examples/lesson_08_collections/exercise_solutions/ivanc/WordCounter.scala b/src/main/tv/codely/scala_intro_examples/lesson_08_collections/exercise_solutions/ivanc/WordCounter.scala new file mode 100644 index 0000000..7ecfa15 --- /dev/null +++ b/src/main/tv/codely/scala_intro_examples/lesson_08_collections/exercise_solutions/ivanc/WordCounter.scala @@ -0,0 +1,11 @@ +package tv.codely.scala_intro_examples.lesson_08_collections.exercise_solutions.ivanc + +final class WordCounter { + // @ToDo: Here you have your exercise! + // @see tv.codely.scala_intro_examples.lesson_08_collections.WordCounterSpec + def countWords(text: String): Int = { + if (text.size > 0) + text.split(" ").size + else 0 + } +}