Java八大基本数据类型
Java八大基本数据类型是很重要一个知识点,不论是你在学习中、编程中还是到面试的时候都会涉及到,下面就Java的八大基本数据类型进行了解记录;
八大基本数据类型的介绍
先通过一张图来直观的了解一下Java八大基本数据类型的分布,如下图所示:
1)四种整数类型(byte、short、int、long):
- byte:8 位,用于表示最小数据单位,如文件中数据,-128~127
- short:16 位,很少用,-32768 ~ 32767
- int:32 位、最常用,-2^31-1~2^31 (21 亿)
注意事项:int i=5; // 5 叫直接量(或字面量),即 直接写出的常数。 整数字面量默认都为 int 类型,所以在定义的long型数据后面加 L或 l(这就是为什么我的hibernate学习笔记里面的以cust_id进行查询时使用的是1l、2l等)。小于32 位数的变量,都按 int 结果计算。强转符比数学运算符优先级高。
2)两种浮点数类型(float、double):
- float:32 位,后缀 F 或 f,1 位符号位,8 位指数,23 位有效尾数。
- double:64 位,最常用,后缀 D 或 d,1 位符号位,11 位指数,52 位有效尾。
注意事项:二进制浮点数:1010100010=101010001.0*2=10101000.10*2^10(2次方)=1010100.010*2^11(3次方)= . 1010100010*2^1010(10次方) 尾数: . 1010100010 指数:1010 基数:2 浮点数字面量默认都为 double 类型,所以在定义的 float 型数据后面加F 或 f;double 类型可不写后缀,但在小数计算中一定要写 D 或 X.X float 的精度没有 long 高,有效位数(尾数)短。 float 的范围大于 long 指数可以很大。 浮点数是不精确的,不能对浮点数进行精确比较。
3)一种字符类型(char):
char:16 位,是整数类型,用单引号括起来的 1 个字符(可以是一个中文字符),使用 Unicode 码代表字符,0~2^16-1(65535)。
注意事项:不能为 0个字符。转义字符:\n 换行 \r 回车 \t Tab 字符 \” 双引号 \ 表示一个\ 两字符
char 中间用“+”连接,内部先把字符转成 int 类型,再进行加法运算,char
本质就是个数!二进制的,显示的时候,经过“处理”显示为字符。
4)一种布尔类型(boolean):true 真 和 false 假。
类型间转换:
大转小:
此种情况下需要使用强制转换,具体情况不进行细说(里面涉及到的东西有兴趣的可以专门查看学习一下,这里不多进行介绍);
强制转换的问题:
①会损失精度,产生误差,小数点以后的数字全部舍弃。
②容易超过取值范围。
总结:
可以根据其位数进行记忆:
- 8位:Byte(字节型)
- 16位:short(短整型)、char(字符型)
- 64位:long(长整型)、double(双精度型)
- 最后一个:boolean(布尔类型)
本章只进行了初步的记录,想要详细学习的童鞋可以查看下面的博客,他讲的比较细致:
南北12345678的博客:https://www.cnblogs.com/mike-mei/p/7646521.html
wzqnls的博客:https://blog.csdn.net/wzqnls/article/details/78897260