java中的数据类型

java数据分为基本类型和引用类型。

一、基本类型

基本类型主要有八种:boolean、char、short、int、long、float、double、byte。

但是在《thinking in java》中,将Void类型和这8种类型放在一起,合并为9种基本类型。void关键字本身只是为了表示没有返回值,不代表任何数据类型,但是由于Void是不能通过new对象来在堆里分配存储空间的,所以可以理解为它是在堆栈中存储的,即为一种基本类型。

二、引用类型

引用类型简单的说,就是java中除去基本类型的所有其他类型。常用的包括:数组、自定义的类等。


补充:

1、主类型与包装类型(封装器):在这里介绍下包装类的概念。

这八种基本类型都有其对应的引用类型的类。Boolean/Character/Short/Integer/Long/Float/Double/Byte。

数值类型全都是有符号(正负号)的,所以不必费劲寻找没有符号的类型。主数据类型也拥有自己的“封装器”(wrapper)类。这意味着假如想让堆内一个非主要对象表示那个主类型,就要使用对应的封装器。

2、高精度类型:

java中有两个特殊类,用于进行高精度的计算:BigInteger和BigDecimal。尽管它们大致可以划分为

“封装器”类型,但两者都没有对应的“主类型”。

这两个类都有自己特殊的“方法”,对应于我们针对主类型执行的操作。也就是说,能对int或float做的

事情,对BigInteger和BigDecimal一样可以做。只是必须使用方法调用,不能使用运算符。此外,由于牵涉更多,所以运算速度会慢一些。我们牺牲了速度,但换来了精度。

BigInteger支持任意精度的整数。也就是说,我们可精确表示任意大小的整数值,同时在运算过程中不会丢失任何信息。

BigDecimal支持任意精度的定点数字。例如,可用它进行精确的币值计算。

至于调用这两个类时可选用的构建器和方法,请自行参考联机帮助文档。

你可能感兴趣的:(java中的数据类型)