Scala/Ітерація

Матеріал з Вікіпідручника

Виводить всі аргументи командного рядка

object HelloWorld {
  def main(args: Array[String]) = {
    args.foreach(println)
  }
}

Пояснення[ред.]

Цей рядок

args.foreach(arg => println(arg))

є викликом методу foreach колекції args із параметром

arg => println(arg)

Цей параметр є функціональним літералом (анонімною функцією).

Повний опис функціонального літерала виглядає так

(arg: String) => println(arg)

але компілятор Scala бачить, що аргумент функції println має тип String, тому вказувати тип необов'язково

Також необовязково вказувати параметр функціонального літералу з одним аргументом, тому досить

args.foreach(println)

Інші способи[ред.]

Інший спосіб вивесті всі параметри командного рядка:

for (arg <- args)
  println(arg)


Використання циклу while:

var i = 0
while (i < args.length) {
  println(args(i))
  i += 1
}