类型转换

2018-09-25  本文已影响4人  满天星爱我

类型转换分为基本数据类型的类型转换和引用数据类型的类型转换

例子:

public static main(String[] args){
byte b = 3;
byte b = b + 1;
System.out.println(b);
}

执行程序后发现报错,原因:
由于bbyte类型,而byte类型是由1个字节8位组成,1是整数默认类型为int,而int类型由4个字节32为组成,再做运算时,8位的byte类型会自动提升(向上转型)为32位的int类型,此时=两边的类型就会不统一,因此会报错,那么就需要让=右边做类型转换,转换后的代码如下:

   byte b = (byte)(b + 1);

将32位 int类型强转(向下转型)为8位的byte类型

例如:

  class Parent{
  }
  class Child extends Parent{
  }

Child类型向上转型为Parent类型

  Parent p = new Child();

Parent类型向下强转为Child类型

   Child c = (Child)new Parent();

如下代码:

  System.out.println('a'+1);

输出结果:

  98

由于字符aASCII编码表中对应的值为十进制的97
因此输出结果为98。

注意
每一个字符在编码表中都有其对应的数值。

上一篇下一篇

猜你喜欢

热点阅读