В данной статье мы рассмотрим переменные в языке программирования Scala.
Как и в любом другом языке, переменная – это именованный зарезервированный участок памяти. Другими словами, когда мы объявляем переменную, мы резервируем какое-то место в памяти.
В Scala предусмотрено несколько способов объявления переменных. Ниже приведён пример объявления переменной с помощью ключевого слова var:
var someVariable : String = "Some String";
То, что мы объявили данную переменную, как var, говорит о том, что она может быть изменена (mutable).
Сейчас, для объявления переменной мы будем использовать ключевое слово val:
val someVariable : String = "Some String";
Тип данных переменной
В Scala тип данных переменной указывается после имени переменной и перед знаком равенства. Данная операция имеет следующий вид:
val или var ИмяПеременной : Тип данных = [Начальное значение];
Либо, без указания начального значения:
val или var ИмяПеременной : Тип данных;
Ниже приведены несколько примеров:
val simpleString : String;
var simpleInteger: Int;
Кроме того, компилятор Scala может автоматически присвоить тип данных переменной, основываясь на значении, которое мы её присваиваем. Данный механизм называется “Предположением типа переменной”.
Пример:
val simpleString = "This is simple String";
В языке программирования Scala поддерживается множественное присваивание. Данная операция имеет следующий общий вид:
val (simpleInteger: Int, simpleString: String) = Pair(100500, "String");
либо:
val (simpleInteger, simpleString) = Pair(100500, "String");
Ниже приведен пример простой программы с объявлением переменных и выводом в консоль их значений:
package net.proselyte.scalatutorial
/**
* Simple program that demonstrates work with variables in Scala.
*
* @author Eugene Suleimanov
*/
object VariablesDemo {
def main(args: Array[String]) {
var simpleInteger: Int = 100500;
val simpleString: String = "This is simple String";
var simpleAutoDetectedInteger = 200800;
val simpleAutoDetectedString = "This is simple auto detected String";
println("simpleInteger:");
println(simpleInteger);
println("simpleString:");
println(simpleString);
println("simpleAutoDetectedInteger:");
println(simpleAutoDetectedInteger);
println("simpleString:");
println(simpleAutoDetectedString);
}
}
В результате выполнения данной программы мы получим следующий результат:
simpleInteger:
100500
simpleString:
This is simple String
simpleAutoDetectedInteger:
200800
simpleString:
This is simple auto detected String
Process finished with exit code 0
Область видимости переменных
В Scala переменная может иметь одну из трёх областей видимости, в зависимости от того, где именно она была объявлена:
- Поле класса
Поле является характеристикой класса. Они доступны внутри каждого метода данного класса и за его пределами, в зависимости от модификатора доступа, который к ним применяется. - Локальная переменная
Локальная переменная – это переменная, которая объявляется внутри метода. Они доступны только внутри данного метода, но объекты могут передать их значения, если данный метод возвращает это значение. - Параметр метода
Данный вид переменных передаётся в метод, как параметр или один из параметров. Они доступны внутри метода, либо за его пределами, если данный метод возвращает значение.
На этом мы заканчиваем обзор переменных в Scala.
В следующей статье мы рассмотрим классы и объекты в данном языке программирования.