Scala 3 — Book

Определение типов

Language

Как и в других статически типизированных языках программирования, в Scala тип можно объявить при создании новой переменной:

val x: Int = 1
val y: Double = 1

В этих примерах типы явно объявлены как Int и Double соответственно. Однако в Scala обычно необязательно указывать тип при объявлении переменной:

val a = 1
val b = List(1, 2, 3)
val m = Map(1 -> "one", 2 -> "two")

Когда вы это сделаете, Scala сама выведет типы, как показано в следующей сессии REPL:

scala> val a = 1
val a: Int = 1

scala> val b = List(1, 2, 3)
val b: List[Int] = List(1, 2, 3)

scala> val m = Map(1 -> "one", 2 -> "two")
val m: Map[Int, String] = Map(1 -> one, 2 -> two)

Действительно, большинство переменных определяются без указания типа, и способность Scala автоматически определять его — это одна из особенностей, которая делает Scala похожим на язык с динамической типизацией.

Contributors to this page: