# Scala 變量
變量是一種使用方便的占位符,用于引用計算機內存地址,變量創建后會占用一定的內存空間。
基于變量的數據類型,操作系統會進行內存分配并且決定什么將被儲存在保留內存中。因此,通過給變量分配不同的數據類型,你可以在這些變量中存儲整數,小數或者字字母。
## 變量聲明
在學習如何聲明變量與常量之前,我們先來了解一些變量與常量。
* 一、變量: 在程序運行過程中其值可能發生改變的量叫做變量。如:時間,年齡。
* 二、常量 在程序運行過程中其值不會發生變化的量叫做常量。如:數值 3,字符'A'。
在 Scala 中,使用關鍵詞 **"var"** 聲明變量,使用關鍵詞 **"val"** 聲明常量。
聲明變量實例如下:
```
var myVar : String = "Foo"
var myVar : String = "Too"
```
以上定義了變量 myVar,我們可以修改它。
聲明常量實例如下:
```
val myVal : String = "Foo"
```
以上定義了常量 myVal,它是不能修改的。如果程序嘗試修改常量 myVal 的值,程序將會在編譯時報錯。
## 變量類型聲明
變量的類型在變量名之后等號之前聲明。定義變量的類型的語法格式如下:
```
var VariableName : DataType [= Initial Value]
或
val VariableName : DataType [= Initial Value]
```
變量聲明不一定需要初始值,以下也是正確的:
```
var myVar :Int;
val myVal :String;
```
## 變量類型引用
在 Scala 中聲明變量和常量不一定要指明數據類型,在沒有指明數據類型的情況下,其數據類型是通過變量或常量的初始值推斷出來的。
所以,如果在沒有指明數據類型的情況下聲明變量或常量必須要給出其初始值,否則將會報錯。
```
var myVar = 10;
val myVal = "Hello, Scala!";
```
以上實例中,myVar 會被推斷為 Int 類型,myVal 會被推斷為 String 類型。
## Scala 多個變量聲明
Scala 支持多個變量的聲明:
```
val xmax, ymax = 100 // xmax, ymax都聲明為100
```
如果方法返回值是元組,我們可以使用 val 來聲明一個元組:
```
val (myVar1: Int, myVar2: String) = Pair(40, "Foo")
```
也可以不指定數據類型:
```
val (myVar1, myVar2) = Pair(40, "Foo")
```
- Scala 教程
- Scala 簡介
- Scala 安裝
- Scala 基礎語法
- Scala 數據類型
- Scala 變量
- Scala 訪問修飾符
- Scala 運算符
- Scala IF...ELSE 語句
- Scala 循環
- Scala while 循環
- Scala do...while 循環
- Scala do...while 循環
- Scala break 語句
- Scala 函數
- Scala 函數傳名調用(call-by-name)
- Scala 指定函數參數名
- Scala 函數 - 可變參數
- Scala 遞歸函數
- Scala 高階函數
- Scala 函數嵌套
- Scala 匿名函數
- Scala 偏應用函數
- Scala 函數柯里化(Currying)
- Scala 閉包
- Scala 字符串
- Scala 數組
- Scala Collection
- Scala List(列表)
- Scala Set(集合)
- Scala Map(映射)
- Scala 元組
- Scala Option(選項)
- Scala Iterator(迭代器)
- Scala 類和對象
- Scala Trait(特征)
- Scala 模式匹配
- Scala 正則表達式
- Scala 異常處理
- Scala 提取器(Extractor)
- Scala 文件 I/O