zoukankan      html  css  js  c++  java
  • java基本类型(数值范围):浮点的底层表示定义,float计算快一些

    Java八种基本类型:

    六种数字类型(四个整数型,两个浮点型),
    一种字符类型,
    一种布尔型。 
    

    具体如下

    1、整数:包括int,short,byte,long 
    2、浮点型:float,double 
    3、字符:char 
    4、布尔:boolean
    

    对应空间和范围如下

    基本型别 二进制位数 最小值 最大值 包装类
    boolean
    char 16-bit 0(Unicode) 65535(Unicode 2^16-1) java.lang.Character
    byte 8-bit -128 +127 java.lang.Byte
    short 16-bit -32768(-2^15) 32767 (+2^15-1) java.lang.Short
    int 32-bit -2147483648(-2^31) 2147483647 (+2^31-1) java.lang.Integer
    long 64-bit -9223372036854775808(-2^63) 9223372036854775807(+2^63-1) java.lang.Long
    float 32-bit 1.4E-45(IEEE754规定32位内容) 3.4028235E38(IEEE754) java.lang.Float
    double 64-bit 4.9E-324(IEEE754) 1.7976931348623157E308(IEEE754) java.lang.Double
    void

    引用类分为3种 (类类型,接口类型及数组类型)

    类类型:对类实例的引用;
    接口类型:对实现该接口的某个子类实例的引用;
    数组类型:对数组值的引用,在jvm中数组是个真正的对象。 
    

    ————————————————————————

    编程时注意确定数值范围,直接使用对应类型比较好

    如32 位时使用 Float 类 节省开发时间

    float的底层表示定义

    IEEE 754 浮点单精度数字格式定义了存储浮点数的32位比特(bit)布局,各bit位具体为:
    "一位做符号位,八位留作指数,23位作尾数"。具体如下
    SEEEEEEEEMMMMMMMMMMMMMMMMMMMMMMM
    其中:
    S = 符号位
    E = 指数
    M = 尾数
    

    Float方法对浮点数与比特的相互转化

    1. 浮点数转bit

     Float.floatToIntBits(float f) 将一个浮点数转成一个比特序列。返回一个32位整数,表示你作为参数提供的浮点数的 IEEE 754 比特排列。
    

    2. bit转浮点数

    Float.intBitsToFloat(int bits)将传入整数作为一个比特序列,按float对应位置规定意义,转成一个浮点数。
    

    小数计算说明

        java中小数数值计算无法保证绝对精准,只能保证一定精度范围,比如,两个double数,不应该使用等号判定是否相等,因为相等的两个double数存储在计算机中可能不相等(计算机存储位数)。
        尤其是除法,只能保留一定范围的小数,精度取决于该类型在计算机的位数
    
  • 相关阅读:
    美政府备忘录强推DNS安全扩展协议 java程序员
    安全使用网上银行 享受在线购物时尚生活 java程序员
    渗透测试介绍 java程序员
    sdut2465其实玩游戏也得学程序(bfs+优先队列)
    usaco1.44Mother's Milk
    sdut2493Constructing Roads
    poj3687Labeling Balls
    usaco1.51Number Triangles(数字三角形)
    sdut2497A simple problem
    usaco2.11Ordered Fractions
  • 原文地址:https://www.cnblogs.com/cl1024cl/p/6205358.html
Copyright © 2011-2022 走看看