SCALA-004 Khai báo biến Scala

Nội dung bài viết

Biến trong Scala chia ra làm 2 loại:

  • var: biến có thể thay đổi tham chiếu đến đối tượng khác
  • val: biến không cho phép thay đổi tham chiếu đến đối tượng khác

Cú pháp khai báo biến chuẩn tắc là:

// Dung val
val [tên biến] = [giá trị] : [kiểu]
val [tên biến] : [kiểu] = [giá trị]
// Dung var
var [tên biến] = [giá trị] : [kiểu]
var [tên biến] : [kiểu] = [giá trị]

Ví dụ, gán a bằng đối tượng mới sau đây sẽ lỗi

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

scala> a = 2
<console>:12: error: reassignment to val
       a = 2
         ^

a là một biến val nên nó không cho phép gán sang đối tượng mới, câu lệnh gán bằng 2 trên được hiểu là tạo ra một đối tượng Int trong bộ nhớ có giá trị là 2 và gán vào a.

Tuy nhiên câu lệnh sau đây thì chạy bình thường

var b = 1 : Int
b = 2