zoukankan      html  css  js  c++  java
  • 基本数据类型

    Java有八种基本数据类型

    整形:byte,short,int,long(默认值0)

    浮点:float,double(默认值0.0)

    字符:char(默认值'u0000')

    布尔:boolean(默认值false)

    byte       1个字节    [-2^7,2^7-1]

    short      2个字节    [-2^15,2^15-1]

    int          4个字节    [-2^31,2^31-1]

    long       8个字节    [-2^63,2^63-1]

    float       4个字节    32位IEEE 754单精度范围

    double   8个字节    64位IEEE 754双精度范围

    char       2个字节    [0,2^16-1]

    boolean 1个字节    true/false

    原码:数字的二进制表示,首位数字0表示正数,1表示负数

    +7的原码为: 0 0 0 0 0 1 1 1
     -7的原码为: 1 0 0 0 0 1 1 1

    反码:正数不变,负数为原码数值部分取反,符号位不变

    +7的反码为: 0 0 0 0 0 1 1 1
     -7的反码为: 1 1 1 1 1 0 0 0

    补码:正数不变,负数为反码+1

    +7的反码为: 0 0 0 0 0 1 1 1
     -7的反码为: 1 1 1 1 1 0 0 1

    整形在Java中是以补码的方式存储, -128表示为: 1 0 0 0 0 0 0 0

    float的范围为-2^128 ~ +2^127,也即-3.40E+38 ~ +3.40E+38;double的范围为-2^1024 ~ +2^1023,也即-1.79E+308 ~ +1.79E+308,一般优先使用double

    计算机内数据都是以二进制的方式存储,一般存储值与显示值存在差异,例如:double类型 0.4D 实际存储为0.40000000000000002220446049250313080847263336181640625

    在进行计算时,特别是乘法运算时,会产生较大偏差

    Java中对金额进行操作时,不要使用浮点型

    可以使用字符串存储,然后用工具类将字符串格式化为BigDecimal,再进行计算

    相关用法可参考:https://blog.csdn.net/MatinBell/article/details/78570880

  • 相关阅读:
    IE和FireFox兼容问题(一)zt
    FireFox不支持.style.cssText
    Firefox和IE下的弹出窗口
    内存不能为"written"错误&数据保护功能
    1~n's permutation
    pl/sqlcoalesce/nvl
    【TODO】JavaScript Demo
    pl/sqlexecute immediate usage [transferred]
    some coments of struts 1
    pl/sqldecode/case/continue
  • 原文地址:https://www.cnblogs.com/jhin-wxy/p/10482312.html
Copyright © 2011-2022 走看看