10进制与2进制
10进制 2进制
- 0 <-> 0
- 1 <-> 1
- 2 <-> 10
- 3 <-> 11
- 4 <-> 100
- 5 <-> 101
- 6 <-> 110
按位与运算符
0&1 = 0,1&0 = 0,0&0 = 0,1&1 = 1
*
* 4&5 ---> 4
* 4-> 1 0 0
* 5-> 1 0 1
* &-------------
* 1 0 0 (4)
*
0|1 = 1,1|0 =1,0|0 =0,1|1 = 1
* 4|5 = 5
* 4-> 1 0 0
* 5-> 1 0 1
* |-------------
* 1 0 1 (5)
val result = 10 - 2 + 3 *4 / 2
println(result)//问题1
val a =true
val b =false
val c =false
println(a || b && c)//问题2
问题1 = 14
问题2 = true
Scala中运算符的优先级
精度问题
//println(a + b == c)
println(1 + 2 == 3)// true
println(0.1 + 0.2 == 0.3)// false
println(BigDecimal(0.1) + BigDecimal(0.2) == BigDecimal(0.3))// true
println(0.1 + 0.1 == 0.2)// true
大数字计算
// val a = 2147483647
// val b =1
// val c = (a+b)/2
// val c = a - (a-b)/2
// println(c)
// 大数字计算
// 1111111111111111111111111111111 * 2222222222222222222222222222
val c:Double = 11111111111111111111111111111111111111.0 * 1111111111111111111111111111111111111111.0
val d = BigInt("11111111111111111111111111111111111111111111111111") * BigInt("11111111111111111111111111111111111111111111111111111111111111")
println(c)
println(d)