object Base09 {
def main(args: Array[String]): Unit = {
//位运算 把10进制转换成二进制表示其中的某个数字
/**
* 10进制 2进制
* 0 0
* 1 1
* 2 10
* 3 11
* 4 100
* 5 101
* 6 110
* 7 111
* ----------------------
* &按位与运算符 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)
*
* 6&2
* 6->1 1 0
* 2->0 1 0
* 0 1 0(6)
*6|2
* 6->1 1 0
* 2->0 1 0
* 1 1 0
*/
println(s"4|5=${4|5}")
}
}
object Base10 {
def main(args: Array[String]): Unit = {
val a = true
val b = false
val c = false
println(a || b && c) //先算&&再算||
val result = 10 - 2 +3 * 4 / 2
println(result)
}
}
object Base11 {
def main(args: Array[String]): Unit = {
val a = 0.1
val b = 0.2
val c = 0.3
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
}
}
object Base12 {
def main(args: Array[String]): Unit = {
val a = 2147483647
val b = 1
val c = a - (a - b)/2
println(c)
//大数字计算
111111 * 222221
//val c :Double=1111111111*111111111111111111111111
//val d =BigInt("111111111111111")*BigInt("11111111111111")
// println(c)
// println(d)
}
}