java强类型

     Java编译器对所有变量,表达式,参数都要进行类型相容性的检查以保证类型的兼容。任何类型的不匹配都是错误的。

简单数据类型

整数:byte(1个字节),short(2个字节),int(4个字节),long(8个字节),都是有符号类型。

浮点类型:float(4个字节),double(8个字节)。

字符:char(2个字节),Java用Unicode字符集来 表示字符,在许多情况下可以当做整数来运算。

布尔型:boolean(JVM规范中没有明确指出大小)

自动类型转化条件

1.两种类型是兼容的

2.目标类型数据的范围比源类型数据大

数字类型(整数、浮点数)之间是兼容的;数字类型、字符类型和布尔型是不兼容的。

强制类型转化

兼容类型的缩小转化

代码实例:

        //整数
        int intType = 1234;
        byte byteType = 123;
        short shortType = 123;
        long longType = 123;
        //浮点数
        double doubleType = 123.456;
        float floatType = 123.23f;//必须要有f,小数默认为double型
        //字符类型
        char charType = 12;
        //布尔类型
        boolean boolType = true;
        //自动类型转换
        intType = byteType;
        doubleType = intType;
        floatType = byteType;
        intType = charType;
         //强制类型转化
        intType = (int) longType;
        byteType = (byte) charType;
         //不兼容类型
        boolType = intType;//报错,不兼容
        boolType = charType;//报错,不兼容

类型自动提升

在表达式中,由于操作数范围不同,会出现类型自动提升的情况

代码实例:

        //类型自动提升
        intType = 1 + byteType;//1为整数型数据
        byteType = (byte) (1 + byteType);

默认规则:提升为范围大的类型

转载于:https://my.oschina.net/kun123/blog/731454

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值