zoukankan      html  css  js  c++  java
  • 数据类型及转换

    数据类型:内置、引用;

    八种基本类型:6+1+1:6种数字类型,1种字符型,1种布尔型

    1>byte   8位1字节,-128~127,

    2>int   32位4字节 ,最小值是 -2,147,483,648(-2^31),最大值是 2,147,483,647(2^31 - 1)

    3>Long  64位8字节,最小值是 -9,223,372,036,854,775,808(-2^63), 最大值是 9,223,372,036,854,775,807(2^63 -1)

    4>float  单精度,32位

    5>double  双精度 64位

    6>short    16 位,最小值是 -32768(-2^15),最大值是 32767(2^15 - 1)

    7>char  16 位 (Unicode编码) 最小值是 u0000(即为0);  最大值是 uffff(即为65,535);

    结论:

    1.整形到浮点型的数据类型转换会有精度损失

    2.byte short int long float double 可以直接的相互转化(强转)

    public class TestDouble {
    
        public static void main(String args[]) {
            System.out.println("0.05 + 0.01 = " + (0.05 + 0.01));
            System.out.println("1.0 - 0.42 = " + (1.0 - 0.42));
            System.out.println("4.015 * 100 = " + (4.015 * 100));
            System.out.println("123.3 / 100 = " + (123.3 / 100));
        }
    }

    结果却是:

    原因:

    double型的数值在相加减的时候,会将数值转换成二进制的数值如10001.10010110011这种表示发再做相加减,,但是在转换成二进制代码表示的时候,存储小数部分的位数会有不够的现象,即无限循环小数,这就是造成微差距的主要原因。

    
    
  • 相关阅读:
    min-width和width的区别
    组装电脑
    css背景透明,文字不透明
    三十九、前端基础之HTML
    三十八、事务、mysql索引,视图
    三十七、python操作mysql,和navicat
    三十六、单表与多表查询
    三十五、表与表之间的关系
    三十四、字段类型
    三十三、初识数据库及简单命令
  • 原文地址:https://www.cnblogs.com/KYin/p/9752102.html
Copyright © 2011-2022 走看看