黑马程序员技术交流社区

标题: 还是数据类型转换的问题 [打印本页]

作者: 冷锋也温柔    时间: 2014-9-5 10:48
标题: 还是数据类型转换的问题
记得老师说过数据类型注意问题A:boolean类型不参与数据的转换。B:byte,short,char之间不转换,它们参与运算都首先转换为int类型。
但是发现不对啊   下面的程序运行通过了
package lianxi;
class celient{
public static void main(String args[]) {
        short i='a';   这里char转short 没报错
        byte x=3;
        char y=(char)x;这里  byte转char也没报错  咋回事啊
        float j=6.3f;
        float a=i+j;
}
}


作者: fantacyleo    时间: 2014-9-5 11:24
老师讲过么?如果讲过,那就是讲得不完整。初始化时=右边如果是编译时常量,则会自动尝试类型转换,而char to short是允许的。至于你用(char)强制转为char,那自然是允许的。参见http://bbs.itheima.com/thread-127149-1-1.html
作者: cs8630323    时间: 2014-9-5 12:38
小类型自动转大类型,大类型强转成小类型,哪里有问题




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2