Java之基本数据类型

本文阅读 5 分钟
首页 代码,Java 正文

Java中一共有8种基本类型,其中有4中整型、2种浮点类型、1种字符类型char(用于表示Unicode编码的代码单元)和一种用于表示真值的boolean类型。

整型用于表示没有小数部分的数值,允许是负数。Java提供了4种整型,如下:

需要注意的是,由于Java程序必须保证在所有机器上都能够得到相同的运行结果,所以各种数据类型的取值范围必须固定,也就是说多有数值类型锁占据的字节数与平台无关。另外,java没有任何无符号形式的int、long、short或byte类型。

浮点类型用于表示有小数部分的数值。在Java中有两种浮点类型:

double表示这种类型的数值精度是float类型的两倍(有人称之为双精度数值)。实际上,只有很少的情况适合使用float类型,例如,需要单精度的库,或者额需要存储大量数据时。

float类型的数值有一个后缀F或f。没有后缀F的浮点数值总是默认为double类型。

需要注意的是,浮点数值不适用于无法接受舍入误差的金融计算。例如,命令System.out.println (2.0-1.1)将打印0.8999999999999999,而不是我们期望的0.9。这种舍入误差的主要原因是浮点数值采用二进制系统表示,而在二进制系统中无法精确地表示分数1/10.这就好像十进制无法精确地表示分数1/3一样。如果在数值计算中不允许有任何舍入误差,就应该使用BigDecimal类。

char类型原本用于表示单个字符。不过,现在情况已经有所变化。如今,有些Unicode字符可以用一个char值描述,另外一些Unicode字符这需要两个char值。

char类型的字面量值要用单引号括起来。在Java中,char类型描述了UTF-16编码中的一个代码单元。但是在实际应用中,我们强烈建议不要在程序中使用char类型,除非确实需要处理UTF-16代码单元。最好将字符窜作为抽象数据类型处理。至于为什么不建议使用,这涉及到Unicode编码的演变以及后续的改进,这里不再详述。

boolean类型有两个值:true和false,用来判断逻辑条件。整型值和布尔值之间不能济宁相互转换。

6个实线箭头,表示无信息丢失的转换;另外有3个虚线箭头,表示可能有精度损失的转换。 img 当用一个二元运算符链接两个值时(例如n+f,n表示整数,f是浮点数),先要将两个操作数转换为同一种类型,然后再进行计算。

  • 如果两个操作数中有一个是double类型,另一个操作数就会转换为double类型
  • 否则,如果其中一个操作数是float类醒,另一个操作数将会转换为float类型。
  • 否则,如果其中一个操作数是long类型,另一个操作数将会转换为long类型。
  • 否则,两个操作数豆浆被转换为int类型。

从以上内容可以,在必要的时候,int类型的值将会自动转换为double类型。但是另一方面,有时也需要将double转换成int。在Java中,允许进行这种数值之间的类型转换,当然,有可能 会丢失一些信息。这种可能丢失信息的转换要通过强制类型转换来完成。强制类型转换的语法格式是在圆括号中给出想要转换的目标类型,后面紧跟待转换的变量名。

本文为互联网自动采集或经作者授权后发布,本文观点不代表立场,若侵权下架请联系我们删帖处理!文章出自:https://blog.csdn.net/qq_38571892/article/details/122944268
-- 展开阅读全文 --
Web安全—逻辑越权漏洞(BAC)
« 上一篇 03-13
Redis底层数据结构--简单动态字符串
下一篇 » 04-10

发表评论

成为第一个评论的人

热门文章

标签TAG

最近回复