java中byte,short,char,int,long运算

大家都知道,在进行运算时,java会隐式的自动进行类型转化,那么有哪些情况会进行转化呢?总结如下:

一、算术运算符

单目运算符:+(取正)-(取负) ++(自增1) --(自减1)

1.1 +(取正)-(取负)

当操作数是byte,short,char时,会自动转化为int类型;返回结果为int。

当操作数是int,long时,不转化,原来是啥类型,还是啥类型。

1.2 ++(自增1) --(自减1)

不管操作数是啥类型,不转化。


双目运算符:+ - * / %(取余)

 1.3 + - * / %(取余)

当两个操作数中没有long类型时,两个操作数中非int类型会先自动转换为int类型,再参与运算,返回结果为int;

当两个操作数中含有long类型时,两个操作数中非long类型会自动转换为long类型,再参与运算,返回结果为long;


二、位运算符

位运算符:&(与)、|(或)、^(异或)、~(非)、<< (带符号左移)、 >>(带符号右移)、 >>> (无符号右移)

 2.1  &(与)、|(或)、^(异或)

与1.3情况相同

 2.2 ~(非)

与1.1情况相同

 2.3 << (带符号左移)、 >>(带符号右移)、 >>> (无符号右移)

与1.1情况相同


总结

虽然上面列出这么多种情况,但归纳下不难记住。

即:除了自增加自减不进行转化外,其它情况都是无long型时,所有非int类型转成int类型;有long类型时,都转成long类型

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值