## val
- val should be initialized and couldn't change
```scala
val x
// error: '=' expected but ';' found.
val x = 5
x = 6
// It couldn't change
```
## scope
- The val or var in {} couldn't be used out of {}
```scala
{
val x = 5
}
println(x)
// x is not value
```
## Pattern matching
- Case is checked from first
- Case could be used in multiline
```scala
val x = 1
x match {
case 1 =>
println("1")
println("OK")
case _ =>
println("NOT 1")
}
// 1
// OK
```