其他分享
首页 > 其他分享> > 07_类型转换(自动与强制)

07_类型转换(自动与强制)

作者:互联网

目录

  1. 类型转换

    一. 自动类型转换

    两种类型相互兼容

    目标类型大于源类型

    //整数-整数
    		
    short s = 123;
    int i = s;//将源类型值存入到目标类型变量中(自动类型转换)123
    
    byte b = 100;
    short s2 = b;//自动类型转换 100
    
    //小数-小数
    		
    float f = 100.0F;
    double d = f;//自动类型转换 100.0
    
    //整数-小数
    int i2 = 100;
    double d2 = i2;//自动类型转换 100.0
    
    //字符-整数
    		
    char c = 'A';
    int i3 = c;//自动类型转换 65 
    
    //字符-小数
    		
    char c2 = 'a';
    double d3 = c2;//自动类型转换 97
    
    //boolean无法与其他类型进行转换
    

    二. 强制类型转换

    两种类型相互兼容

    目标类型小于源类型

    //长度足够,数据完整
    short s = 113;
    byte b = (byte)s;//强制类型转换 113
    
    //长度不够,数据截断		
    short s2 = 257;
    byte b2 = (byte)s2;//强制类型转换(数据截断)1
    
    short s3 = 130;		
    byte b3 = (byte)s3;//强制类型转换(数据截断)-126
    
    //小数强转为整数
    double d = 2.999;
    int i = (int)d;//2
    
    //整数强转为字符		
    short s4 = 65;
    char c = (char)s4;//A
    
    //字符与整数转换的注意事项		
    short s5 = -1;//-32768 ~-32767
    char c2 = (char)s5;//char类型没有负数,所以负数转为字符会输出问号?
    

    img

    数据的最高位为符号位

    符号位为0:代表正数

    符号位为1:代表负数

标签:类型转换,short,07,int,char,自动,强制,byte
来源: https://www.cnblogs.com/spyX/p/16446777.html