How to get the middle words of a string in Scala

1 Answer

0 votes
object MiddleWordsOfAString_Scala  {
  def getMiddleWords(string: String): String = {
    val wordsArr = string.split(" ")
    val numWords = wordsArr.length

    if (numWords % 2 == 0) {
      val middle1 = wordsArr((numWords / 2) - 1)
      val middle2 = wordsArr(numWords / 2)
      
      s"$middle1 $middle2"
    } else {
      val middleMinus1 = wordsArr((numWords / 2) - 1)
      val middle = wordsArr(numWords / 2)
      val middlePlus1 = wordsArr((numWords / 2) + 1)
      
      s"$middleMinus1 $middle $middlePlus1"
    }
  }

  def main(args: Array[String]): Unit = {
    val string = "c++ c java scala c# python rust"
    
    println(getMiddleWords(string))
  }
}
 



/*
run:

java scala c#

*/

 



answered Oct 8, 2024 by avibootz
edited Oct 9, 2024 by avibootz
...