SCALA-005 Numbers trong Scala
Nội dung bài viết
Trong Scala kiểu số học có thể là Char, Byte, Short, Int, Long, Float, Double, BigInt, BigDecimal.
1. Khai báo biến số học
Bình thường nếu không khai báo gì thêm, kiểu Int
và Float
được sử dụng mặc định nếu bạn khai báo số nguyên hoặc số thực (có dấu chấm)
val a = 1
val b = 2.0
println("a la mot: " + a.getClass.getName)
println("b la mot: " + b.getClass.getName)
scala> val a = 1
a: Int = 1
scala> val b = 2.0
b: Double = 2.0
scala> println("a la mot: " + a.getClass.getName)
a la mot: int
scala> println("b la mot: " + b.getClass.getName)
b la mot: double
Để khai báo kiểu số học mà bạn mong muốn khi khởi tạo, bạn có thể khai báo như sau:
val a1 : Short = 5
val a2 = 5 : Short
val b1 = 6.0 : Double
val b2 : Double = 6.0
2. Ép kiểu
Để chuyển đổi giữa các kiểu số học, chúng ta có thể sử dụng hàm to[Type]
được xây dựng sẳn
val a = 18
println(a.toDouble)
val b = 5.5
println(b.toInt)
val s : String = "125"
println(s.toInt)
scala> val a = 18
a: Int = 18
scala> println(a.toDouble)
18.0
scala> val b = 5.5
b: Double = 5.5
scala> println(b.toInt)
5
scala> val s : String = "125"
s: String = 125
scala> println(s.toInt)
125
3. Thực hiện toán tử
Như nhiều ngôn ngữ khác, Scala
cho phép bạn thực hiện các toán tử số học +, -, *, /, %
1 + 2
8 - 9.5
2 * 7.8
15 % 4
7 / 2
7 / 2.0
scala> 1 + 2
res35: Int = 3
scala> 8 - 9.5
res36: Double = -1.5
scala> 2 * 7.8
res37: Double = 15.6
scala> 15 % 4
res38: Int = 3
scala> 7 / 2
res39: Int = 3
scala> 7 / 2.0
res40: Double = 3.5