黑马程序员 数据类型计算和运算符

------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------

整形常量  小数常量  布尔常量  空常量 字符常量  字符串常量
byte   范围  -128 ~ 127
不同进制的数据组成
二进制       
0,1 组成。以 0b 开头。1.7 以后的版本,基本没有怎么用)
八进制          
0,1, 7 组成。以 0 开头
十进制       
0,1, 9 组成。整数默认是十进制的
十六进制   
0,1, 9,a,b,c,d,e,f( 大小写均可 ) 。以 0x 开头
§        运算中容量小的类型与容量大的类型进行计算,默认转换为容量大的数据类型;数据类型按容量大小排序为:
§        Byte , short , char -> integer ->long->float->double
思考:哪句是编译失败的呢?为什么呢?
byte b1=3,b2=4,b;
b = b1 + b2 ;
b = 3 +4 ;
解答:
b = b1 + b2 ;
o        (1)byte ,short ,char 三种数据类型在内存中运算的时候会自动类型提升为 integer 去运算
o        (2)b1 b2 是两个变量值 ,  jvm  无法判断里面值的大小
b=3+4;
o        java  编译器有常量优化机制 , 在编译的时候已经将 3+4 的结果赋值给 b
逻辑与和逻辑或
单逻辑与运算   两边都要运算
双逻辑与运算   &&   左边为假  者右边不参与运算;
逻辑或的单和双同上
一个数被另一个数异或两次等于本身
无符号右移无论高位是什么 高位都是补 0
有符号右移高位是负数就补 1 正数补 0
* &&和&的区别?
        * a:最终结果一样。
        * b:&&具有短路效果。左边是false,右边不执行。
* 位异或运算符的特点

    * ^的特点:一个数据对另一个数据位异或两次,该数本身不变。
   
*  <<:左移    左边最高位丢弃,右边补齐0
    *  >>:右移    最高位是0,左边补齐0;最高为是1,左边补齐1
    *  >>>:无符号右移 无论最高位是0还是1,左边补齐0
Byte int char short 枚举 字符串(1.7以后) 可以作为switch表达式
Int b = 0;  b = b++ ; System.out.println(b);   
结果为 0;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值