Переменные, значения и типы в Scala

В языке программирования Scala переменные и значения объявляют с помощью ключевого слова val либо var. Val является неизменяемой переменной (то есть значением) -- по сути, это аналог final в языке Java. Что касается var, то это обычная переменная. Рассмотрим примеры.

А вот в языке программирования Java аналогичный код будет выглядеть уже следующим образом:

Какие приятные особенности Scala тут можно отметить:

  • точка с запятой совсем необязательна (функционирует автоматический вывод);
  • указание типа переменной тоже необязательно (тоже функционирует автоматический вывод, на этот раз типов);
  • ключевое слово public подразумевается по дефолту.

На практике типы переменных указывают после имени, причем через двоеточие. Кроме того, в языке Scala не существует примитивных типов, как таковых, тех же int, float, boolean и пр. Эти типы заменяют соответствующие классы: Float, Int, Boolean и так далее. При этом любая переменная является экземпляром какого-нибудь класса. Что касается иерархии классов, то она начинается с Any, а уже далее все классы наследуются от него (можно провести аналогию с Object в Java, не правда ли?)

Также следует добавить, что применение привычных операторов на самом деле является вызовом метода, когда a + b тождественно a.+(b). А вариант записи без точки можно применять к любым методам (правда, с рядом ограничений).

По материалам tproger.ru.