在Java中有八大基本数据类型

(1)整型

int :整数类型

short :短整型

long :长整型

byte :字节类型

(2)浮点型

float :浮点类型(单精度)

double :浮点类型(双精度)

(3)逻辑型

boolean :布尔型

(4)字符型

char :字符型

基本数据类型自动转换

byte -> short

char -> int -> long

float -> double

int -> float

long -> double

低数据类型可以直接赋值给高数据类型,反之,高数据类型转换为低数据类型必须强转,即提前制定数据类型,例 int a = (int) 5.0F

Java 8大基本类型所占字节数(或 bit 数)

类型 存储需求 bit 数 取值范围 备注

int 4字节 48 -2147483648~2147483647 即 (-2)的31次方 ~ (2的31次方) - 1

short 2字节 28 -32768~32767 即 (-2)的15次方 ~ (2的15次方) - 1

long 8字节 88 即 (-2)的63次方 ~ (2的63次方) - 1

byte 1字节 18 -128~127 即 (-2)的7次方 ~ (2的7次方) - 1

float 4字节 48 float 类型的数值有一个后缀 F(例如:3.14F)

double 8字节 88 没有后缀 F 的浮点数值(例如:3.14)默认为 double

boolean 1字节 18 true、false

char 2字节 28 Java中,只要是字符,不管是数字还是英文还是汉字,都占两个字节。

至于为什么 Java 中 char 无论中英文数字都占用2字节,是因为 Java 中使用 Unicode 字符,所有字符均以2个字节存储。

而如果需要识别字符是否为中文,可以使用正则匹配式:

String _regex = "[\\u4e00-\\u9fa5]";

补充

Java有一个能够表示任意精度的算书包,通常称为“大数值”(big number)。虽然被称为大数值,但它并不是一种Java类型,而是一个Java对象。

如果基本的整数和浮点数精度不能够满足需求,那么可以使用java.math包中的两个很有用的类:BigInteger、BigDecimal(Android SDK中也包含了java.math包以及这两个类)这两个类可以处理包含任意长度数字序列的数值。BigInteger类实现了任意精度的整数运算,BigDecimal实现了任意精度的浮点数运算。具体的用法可以参见Java API。

现在金融类产品大热,建议金融类 App 的工程师在开发初期就直接使用 BigDecimal 数据对象来记录金融数据。

java中double类型占几个字节_Java基本数据类型占用字节数相关推荐

  1. java中double类型占几个字节_java中各种数据类型占用字节数

    1字节(Byte)=8bit java的基本类型 类型 所占字节 byte 1 short 2 int 4 long 8 float 4 double 8 char 2 String中字母和汉字所占字 ...

  2. java中double类型占几个字节_面试官:Java 中有几种基本数据类型是什么?各自占用多少字节?...

    认识基本数据类型 在学习基本数据类型之前,我们先认识一下这两个单词:1.bit --位:位是计算机中存储数据的最小单位,指二进制数中的一个位数,其值为"0"或"1&quo ...

  3. Java中double类型输出小数点后两位

    Java中double类型输出小数点后两位 思路 就是在输出的时候使用字符串格式即可. double testNum=1.123456789;System.out.println(String.for ...

  4. java double 转string_double转string java中double类型如何转换为String类型

    double转string java中double类型如何转换为String类型 在我们做的项目中,有一个字符串的生成,我们需要double去拼接,结果发现了,拼接后的字符串,那个double值用科学 ...

  5. java中double类型精度丢失问题及解决方法

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 来源: https://blog.csdn.net/yacolsp ...

  6. Java中double类型比较大小或相等的方法

    在Java中int类型数据的大小比较可以使用双等号,double类型则不能使用双等号来比较大小,如果使用的话得到的结果将永远是不相等,即使两者的精度是相同的也不可以.下面介绍两种比较double数据是 ...

  7. Java中double类型大小比较的五种方法

    文章目录 1.使用BigDecimal 2.使用包装类Double 3.在误差范围内运行相等 4.转换成字符串 5.使用doubleToLongBits()方法 在Java中 int类型数据的大小比较 ...

  8. Java中char类型占几个字节?

    要想弄清楚char占用几个字节,就必须了解Unicode编码机制. 早在Unicode诞生之前,就已经有很多字符集,如美国的ASCII.表示西欧语言的ISO 8859-1.中国的GB18030等. 但 ...

  9. java中float类型占4个字节,long类型占8个字节,为什么long类型能自动转换成float类型,且float类型为什么表示的范围比long类型大

    作为常识我们都知道,float型在内存中占用的是4个字节,而long型占用8个字节.单从字节数来看,long型是大于float型的.但实际上,float表示的范围却是比long要大的 float类型的 ...

  10. Java中double类型精度丢失的问题_double类型数据加减操作精度丢失解决方法_BigDecimal取整

    BigDecimal在用double做入参的时候,二进制无法精确地表示十进制小数,编译器读到字符串"0.0000002"和"1.0000002"之后,必须把它转 ...

最新文章

  1. 『中级篇』k8s基础网络Cluster Network(66)
  2. redis集群依赖ruby
  3. 在Mac上唤出「快速备忘录」的开启与关闭设置教程
  4. PyTorch系列入门到精通——DataLoader与Dataset
  5. 【IT】一些有用的链接和操作
  6. python 模块定义_在python中定义私有模块函数
  7. dllregisterserver找不到入口点_厨房间漏水找不到漏水点,厨房上面漏水 | 影楼
  8. Paint的方法总结(一):基本常用Api
  9. 图像语义分割(13)-OCNet: 用于场景解析的目标语义网络
  10. 生信学习-高通量分析-NMDS分析: 非度量多维尺度分析
  11. 台湾Yahoo联手Mozilla 对抗Google
  12. groovy环境安装
  13. Kubernetes -K8S安装部署及SpringCloud应用
  14. 电脑通过热点共享网络,手机连接热点可以访问其他内网
  15. 倍数(Python)
  16. 事件2 有源码 可以随意进行练习哈 太棒了 一起加油 一起成长
  17. 山东大学2021算法期末
  18. 联邦学习 Federated Learning 相关资料整理
  19. 三星服务器内存条型号区分,三星内存铭牌详解|三星内存条标签内存参数详解...
  20. 二叉树中的结点数目确定时,高度最小的一定是完全二叉树?

热门文章

  1. 锐捷Linux认证失败,如何解决win10系统锐捷认证失败?锐捷认证失败的解决方法步骤...
  2. 私塾在线精华课程汇总贴(含源码和PPT)
  3. 《我是一只IT小小鸟》
  4. 世界黑客编程大赛第一名的作品(97年Mekka ’97 4K Intro比赛)
  5. 在Windows NT上装还原卡
  6. Python基础 day4
  7. 数字化医院网络终端安全管理
  8. 如何用HTML+CSS实现淘宝页面效果
  9. centos服务器如何设置代理上网?
  10. linux ubuntukylin和deepin操作系统的比较及改进方向的建议