JAVA与C语言不同的自动类型转换

自动类型转换

为什么会出现?怎么转换?转换的规则?

首先:在实际项目中会出现不同类型的变量相互赋值。为了可以通过编译,所以有这样的一个底层机制。

其次:怎么转换?一句换 “小类型-->大类型”;

eg:byte   a=12;

        int    b=a;

        System.out.println(a);

        System.out.println(b);

最终输出:

12

12

具体规则以及实例如下:

自动转换类型与运算机制:

        1)在表达式中参与运算的数据类型取决于最高级的数据类型。

1.Eg:

       byte   a=2;

       int    b=3;

       long   c=4;

   则:a+b+c的结果是一个long类型的数据;

      long   result=a+b+c;

          2)在表达式中byte,short,char类型都会先转换为int类型再参与运算;

2.eg:

       byte   a=4;

       short   b=5;

      根据第一条规则:a+b的结果应该是short类型的

但是根据第二条规则:byte和short类型都先转换为int 类型了,所以a+b的结果应该用int 类型的数据去接收。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值