位运算:把十进制得数转化为二进制数表示,其中的某个数字
object Base09 {
def main(args:Array[String]):Unit = {}}
// 位运算:把十进制的数转成二进制表示,其中的某个数字
/**
* 10进制 2进制
* 0 0
* 1 1
* 2 10
* 3 11
* 4 100
* 5 101
* 6 110
* --------------------------
* &按位与运算符。0&1 =, 1&0=0,0&0=0,1&1 = 1
*
* 4&5--->4
* 4->1 0 0
}
}
当存在多个运算符的时候,先算哪个,再算那个?
1.(*) 除(/)模(%) > 加(+)减(-)
2.算术(+-*/%)> 关系 (><>=!=)> 赋值(=)
3. && > ||
大数问题
object Base10 {
def main(args: Array[String]): Unit = {
val a = 2147483647
val b = 1
// val c = (a+b)/2 //bug
val c = a - (a - b) / 2 //高手计算平均数
println(c)
// 大数字做计算
//1111111111111111*2222222222222222222222222
// val c:Double = 1111111111111111111111111111111111111111111111111111f*1111111111111111111111111111111111111111111111111111111111111
// val d = BigInt("11111111111111111111111111111111111111111111111111111")*BigInt("111111111111111111111111111111111111111111111111111111111111111111111111111111111111')
//println(c)
// println(d)
}
}
IF 语句
if(布尔表达式 1){
如果布尔表达式 1 为true 则执行该语句块
}else if(布尔表达式2){
如果布尔表达式 2 为true 则执行该语句块
}else if(布尔表达式3){
如果布尔表达式3 为true 则执行该语句块
}else{
如果以上条件都为false 执行该语句块