JAVA数据类型
强语言类型和弱类型语言
强类型语言
- 要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用。
弱类型语言
- 数据类型可以被忽略的语言。
Java的数据类型分为两大类
1. 基本数据类型(primitive type)
基本数据类型有8种,可按照如下分类:
①整数类型:byte、short、int、long
②浮点类型:float、double
③字符类型:char
④布尔类型:boolean
No. | 数据类型 | 大小/位 | 可表示数据范围 | 默认值 |
---|---|---|---|---|
1 | byte (字节型) |
8 | -128~127 | 0 |
2 | short (短整型) |
16 | -32768~32767 | 0 |
3 | int (整型) |
32 | -2147483648~2147483647 | 0 |
4 | long (长整型) |
64 | -9223372036854775808~9223372036854775807 | 0 |
5 | float (单精度) |
32 | -3.4E38~3.4E38 | 0.0 |
6 | double (双精度) |
64 | -1.7E308~1.7E308 | 0.0 |
7 | char (字符) |
16 | 0~255 | 'u0000' |
8 | boolean (布尔) |
- | true或false | false |
2.引用数据类型(reference type)
类、 接口类型、 数组类型、 枚举类型、 注解类型、 字符串型
eg:
String
类型就是引用类型。
所有的非基本数据类型都是引用数据类型。
3.整数扩展
整数进制
八进制:由0,1,....,7.以0开头。
System.out.println(0100);
十进制:由0,1......,9.默认整数。
System.out.println(100);
十六进制:由0,1,......9,a,b,c,d,e,f(大小写均可)组成。
System.out.println(0x100);
4.浮点数扩展
float:有限,离散,有舍入误差(大约接近但不等于)
所以最好完全避免使用浮点数进行比较!
所以最好完全避免使用浮点数进行比较!
所以最好完全避免使用浮点数进行比较!
经典面试问题
银行业务怎么表示?(钱)
答:BigDecimal 数学工具类
5.字符扩展
所有的字符本质还是数字
编码:Unicode 中有一个表 每个字符都对应着一个数字
char c2='中';
System.out.println((int)c2);
//输出结果为:20013
char c3='u0061';
System.out.println(c3);
//输出结果为:a
最多可以处理0-65536字节 ,即Excel最大长度
6.转移字符
制表符:
System.out.println("Hello world");
//输出结果为Hello world
7.布尔值扩展
boolean flag=true;
if(flag==true){}//新手
if(flag){}//老手