JavaEE之位运算

1.计算机中 所有的二进制数都是以补码形式来存储和计算的。正数的补码=原码 。   负数的补码=反码+1;

2.Java中,凡是带小数点的叔,都看成Double类型。但是可以强制转换  float f=(float)1.0;  float f=1.3f;  float和Double的精度》long型;

3.Double值不要用double来判断,因为它是浮点型,数据分两部分储存,是近似值。

public class Type3{
public static void main(String args[]){

double s =0;
for(int i=0; i<10; i++){
s = s + 0.1;
if(s==0.9){//※※切记: double值不要用“==”来判断的,因为它是浮点型数据,只是近似值
System.out.println("okok: "+i );
}

if( Math.abs(s-0.9)<0.00000001){ //要采用近似的方式判断
System.out.println("okok: "+i );
}

}
System.out.println("s="+ s);


}
}

只能用近似来判断。位运算;int32位,与运算填满;异或;两位相同则为0,两位不同则为1

位运算;

public class BitDemo{
public static void main(String args[]){
//乘法==>加法   除法==>减法 ==> 加法
//8421  110 

int a = ~3;
System.out.println("a1=" + a);

a = 12 & 10;
System.out.println("a2=" + a);

a = 12 | 10;
System.out.println("a3=" + a);

a = 12 ^ 10;
System.out.println("a4=" + a);

System.out.println("=================");
int x = 23445;
System.out.println( Integer.toBinaryString(x) );


int y = x&255;
System.out.println( Integer.toBinaryString(y) );
//System.out.println(x);


int b=8;
b = b<<2;//左移1位,相当于乘以2.  同理,右移1位相当于除以2
System.out.println( b );


  }
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值