类转型分析

1 程序源码

/**
 *作者 : iechenyb<br>
 *类描述: 说点啥<br>
 *创建时间: 2017年8月20日
 */
public class 类型转型 {
	Log log = LogFactory.getLog(类型转型.class);
	public static void main(String[] args) {
		short s1 = 1;
		s1+=1;//编译后会强制转型
		byte b1 = 1;
		b1+=1;//编译后会强制转型
		int i1=1;
		i1+=1;
		long l1 = 1;
		l1+=1;
		System.out.println(s1+","+b1+","+i1+","+l1);
	}
}

2 编译后代码

public class 类型转型
{
  Log log = LogFactory.getLog(类型转型.class);
  
  public static void main(String[] args)
  {
    short s1 = 1;
    s1 = (short)(s1 + 1);
    byte b1 = 1;
    b1 = (byte)(b1 + 1);
    int i1 = 1;
    i1++;
    long l1 = 1L;
    l1 += 1L;
    System.out.println(s1 + "," + b1 + "," + i1 + "," + l1);
  }
}

结论:

① short s=s+1

会出现编译错误。s+1的时候,结果会被“升格”为int类型。把int赋给short当然编译错误。

② s+=1

对于“+=”操作,系统会自动执行类型转换操作,等价于s=(short)s+1。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值