整型数据byte short int long
- java提供了一个类,BigIntegerr:用于处理较大整数。
- long赋值时,因为整数默认是int类型,要转换为long类型的值,后面加上l或L
- 同一个整数可以使用不同的进制表示:(System.out.println(0b101)需jdk1.7才能按照 十进制输出)
- Java7 开始 支持数字之间用 _ 分割(12_34_56输出123456)
浮点型float double 其实就是小数
1.float(单精度32位)
直接给变量赋值时必须在浮点类型数据后面加上f 或F
[ 表示该数据是一个浮点类型数据 ]
2.double( 双精度64位)
3.单精度双精度区别:
- 对于单精度浮点数,运行速度相比double更快,占内存更小,
- 但是当数值非常大或者非常小的时候会变得不精确。
- 双精度比单精度表示的位数大 精确的位数多,简单地说, float表示的小数点位数少。
4. 默认浮点数的类型是 double
5. 注意:表的时候会有精度损失 [ 使用浮点数的时候需要注意 ]
例如 double num= 1.0, 是一个无限接近1.0的一个值
结论:浮点运算很少是精确的,只要是超过精度能表示的范围就会产生误差。往往产生误差不是 因为数的大小,而是因为数的精度。因此,产生的结果接近但不等于想要的结果。尤其在使用 float 和 double 作精确运 算的时候要特别小心。
那怎么更精确的表示浮点数呢?
Java提供了一个类BigDecimal来表示更精准的浮点数
字符char
- 什么是字符:单引号引起来的一个符号就是字符数据 ------------例如:’A’
- 存储单位16 位[0-65535] [2个字节,16位]。字符常量使用单引号''包裹起来。
- 表现形式:
1.‘A’最常用,最直观的方式
2. 使用一个数字表示,对应有一个ASCII码表[ 字符编码 ]
例如:char c = 65;//表示 ‘A’ 这个字符
4.16进制表现形式
‘A’-》65(10进制)
'A' -》0x41(16进制)怎么表示? ‘\u0041’
5.特殊符号(需要使用转义符号转义)
\’ \” \\ \r(回车) \n(换行) \t(制表符Tab)
6.字符数据可以当成一个整数来使用,
7.什么是asscii表,就像化学元素周
布尔类型boolean
值只有两个 true false,不能使用 0 1表示