Java基本类型总结

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

1.整型

类型 存储需求 取值范围
int 4字节 -2147483648~2147483647(正好超21亿)
short 2字节 -32768~32767
long 8字节 -9223372036854775808~9223372036854775807
byte 1字节 -128~127

int是最常用的,但是一旦取值超过了int的范围,就需要使用long类型。

byte和short类型适用于特定场合,比如处理底层文件或者存储大数组的时候。

从Java7开始,加上前缀0b或是0B就可以写二进制。例如0b1001就是指9。不仅如此,我们还可以为数字字面量加下划线。

例如1_000_000指的就是一百万!Java编译器会自动去除这些下划线。

2.浮点型

类型 存储需求 取值范围
float 4字节 大约±3.40282347E+38F(有效位数为6-7位)
double 8字节 大约±1.79763913486231570E+308(有效位数为15位)

绝大多数情况下使用double类型,若需要使用float类型,需要添加后缀F或f。

Java中对于浮点数溢出和出错有三种浮点数值:

(1)正无穷大:正数除以0;对于double,对应Double.POSITIVE_INFINITY;对于float,对应Float.POSITIVE_INFINITY;

(2)负无穷大:负数除以0;对于double,对应Double.NEGATIVE_INFINITY;对于float,对应Float.NEGATIVE_INFINITY;

(3)NaN(不是一个数字):0/0或负数开平方根时都为NaN;对于double,对应Double.NaN;对于float,对应Float.NaN;

3.char

char类型的字面量值要用单引号括起来。可以表示十六进制值,范围从u0000到Uffff。但是需要注意的是:Unicode转义序列会在解析代码之前得到处理。

例如注释://u00A0 is a new line 会产生一个语法错误,因为u00A0会替换成一个换行符!

4.boolean

boolean类型有两个值:true和false。

原文地址:https://www.cnblogs.com/yang21/p/7128143.html