zoukankan      html  css  js  c++  java
  • java中基础数据类型的应用

    1.float 与 double

      float是单精度类型,占用4个字节的存储空间 
      double是双精度类型,占用8个字节的存储空间 
      1)当你不声明的时候,默认小数都用double来表示,所以如果要用float的话,则应该在其后加上f 
        例如:float a=1.3; 
        则会提示不能将double转化成float  这成为窄型转化 
        如果要用float来修饰的话,则应该使用float a=1.3f

      2)jvm中默认使用的都是double,所以就会在上面看到如果1.3不加f,就会告诉你不能转化,所以java中建议直接使用double

      3)实际上,float比double占用的空间更小,对编程人员来说,double 和 float 的区别是double精度高,有效数字16位,float精度7位。但double消耗内存是float的两倍,double的运算速度比float慢得多

      4)范围、精度:

        float:2^23 = 8388608,一共七位,由于最左为1的一位省略了,这意味着最多能表示8位数: 2*8388608 = 16777216 。有8位有效数字,但绝对能保证的为7位,也即float的精度为7~8位有效数字
        double:2^52 = 4503599627370496,一共16位,同理,double的精度为16~17位

        之所以不能用f1==f2来判断两个数相等,是因为虽然f1和f2在可能是两个不同的数字,但是受到浮点数表示精度的限制,有可能会错误的判断两个数相等!

    2. shor Int long

      short的取值范围为-32768~32767,占用2个字节(-2的15次方到2的15次方-1) 
      int的取值范围为(-2147483648~2147483647) 最大 20亿 ,占用4个字节(-2的31次方到2的31次方-1) 
      long的取值范围为(-9223372036854774808~9223372036854774807) 最大 900亿亿,占用8个字节(-2的63次方到2的63次方-1)

     

  • 相关阅读:
    经典SQL语句集锦(收藏版)
    硬件访问服务学习笔记_WDS
    Android 工具视频学习笔记_WDS
    Android资源收集
    Android USB gadget configfs学习笔记总结
    IP、端口号、MAC
    Java中的泛型
    git配置config文件
    Java基础知识总结
    Java中的继承抽象类和接口
  • 原文地址:https://www.cnblogs.com/yingsong/p/6709112.html
Copyright © 2011-2022 走看看