黑马程序员技术交流社区

标题: 我一直以为只有两个不同类型的数据运算时才会自动提升 [打印本页]

作者: 打工人    时间: 2012-10-6 09:55
标题: 我一直以为只有两个不同类型的数据运算时才会自动提升
/*char 和 char运算时,都会先提升成int型,byte和short也是,我一直都以为不同类型之间才会有类型自动提升的
*/

class a
{
        public static void main(String[] args)
        {  char x='0',y='1',c=2;
        char q=(char)(x+y);//不加强制转换就会出现编译错误
         byte z=1,v=2;
         byte n=(byte)(z+v);//不加强制转换会出现编译错误
                System.out.println(q+“,"+n+","+(x+y));//对比q和x+y的值不难发现这一点
        }

}


作者: 唐志兵    时间: 2012-10-6 09:56
int + int 也会提升为 Integer的。
作者: 打工人    时间: 2012-10-6 10:00
唐志兵 发表于 2012-10-6 09:56
int + int 也会提升为 Integer的。

吼吼,我老是慢半拍




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