Java中的类型转换

类型转换

由于Java是强类型语言,所以要进行有些运算的时候的,需要用到类型转换。

整型、实型(常量)、字符型数据可以混合运算。

运算中,不同类型的数据先转化为同一类型,然后进行运算。

转换从低级到高级(根据容量来看)。

数据类型转换必须满足如下规则:

1.不能对boolean类型进行类型转换。

2.不能把对象类型转换成不相关类的对象。

3.在把容量大的类型转换为容量小的类型时必须使用强制类型转换。

4。转换过程中可能导致溢出或损失精度。

  1. 自动类型转换

高-低

自动类型转换:容量小的数据类型可以自动转换为容量大的数据类型。

例如: short数据类型的位数为16位,就可以自动转换位数为32的int类型,同样flfloat数据类型的位数为

32,可以自动转换为64位的double类型。

  1. 强制类型转换

低-高

强制类型转换,又被称为造型,用于显式的转换一个数值的类型.

在有可能丢失信息的情况下进行的转换是通过造型来完成的,但可能造成精度降低或溢出。

强制类型转换的语法格式: (type)var ,运算符“()”中的type表示将值var想要转换成的目标数据类

型。 条件是转换的数据类型必须是兼容的。

当将一种类型强制转换成另一种类型,而又超出了目标类型的表示范围,就会被截断成为一个完全不同

的值,溢出。

package study;

public class Demo02 {

    public static void main(String[] args) {
        char c1='A';//定义一个char类型
        int i1 = c1;//char自动类型转换为int
        System.out.println("char自动类型转换为int后的值等于"+i1);
        char c2 = 'A';//定义一个char类型
        int i2 = c2+1;//char 类型和 int 类型计算
        System.out.println("char类型和int计算后的值等于"+i2);
        double x = 3.14;
        int nx = (int)x; //值为3
        char c = 'a';
        int d = c+1;
        System.out.println(nx); 
        System.out.println(d);//98
        System.out.println((char)d); //b

    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值