zoukankan      html  css  js  c++  java
  • 07_类型转换(自动与强制)

    类型转换

    一. 自动类型转换

    两种类型相互兼容

    目标类型大于源类型

    //整数-整数
    		
    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类型没有负数,所以负数转为字符会输出问号?
    

    数据的最高位为符号位

    符号位为0:代表正数

    符号位为1:代表负数

  • 相关阅读:
    ATM+购物车系统
    Python 异常处理
    单例的三种实现方式
    面向对象高级编程
    面向对象
    文件处理
    字符编码
    python入门
    Python终端如何输出彩色字体
    Python 全栈开发:python初识面向对象
  • 原文地址:https://www.cnblogs.com/MRASdoubleZ/p/14356273.html
Copyright © 2011-2022 走看看