java基础学习笔记——day03
第二章续 ——数据类型详讲
数据类型 | 名称 | 占用字节 | 类型 | 范围 |
---|---|---|---|---|
基本数据类型 | byte | 1个字节 | 整型 | -128~127 |
short | 2个字节 | 整型 | 大约±3w | |
int | 4个字节 | 整型 | 大约±21亿 | |
long | 8个字节 | 整型 | -2^64~ 2^64 | |
double | 8个字节 | 浮点型(双精度) | 小数位后面15~16位 | |
float | 4个字节 | 浮点型(单精度) | 小数位后面6~7位 | |
char | 2个字节 | 字符型 | 0~65535 | |
Boolean | 1个字节 | 逻辑型 | true/false | |
引用类型 | 类 class | |||
数组 [ ] | ||||
接口 interface |
1. 整数
1.1 注意事项
- 整数的类型有byte、short、int、long四种,他们都有各自的存储范围,其中long是最大的,如果有一个比long范围还要大的数,可以使用BigInteger
- 在java中,所有的整数的默认类型都是int
- 在java中,如果给byte和short赋值的时候,只要不超过它们的范围,就可以正常的赋值为byte和short类型
- 在java中,给long赋值的时候,要在数字的后面加上**“l”或者“L”**
1.2 整数的赋值方式
i. 十进制赋值
- 正常赋值
int num = 10;//用常用的十进制数字赋值
ii. 二进制赋值
- 以 0b 0B 开头,后跟二进制数
int num = 0b1010; // 输出结果是 10
iii. 八进制赋值
- 以 0 开头,后跟八进制数
int num = 012; // 输出的结果是 10
iv. 十六进制赋值
-
以 0x 0X 开头,后跟十六进制数
-
注:十六进制中,1015的数字用大写字母AF表示
- A -> 10
- B -> 11
- C -> 12
- D -> 13
- E -> 14
- F -> 15
int num = 0xA; // 输出结果是 10
int num = 0XFF;// 输出结果是 255
2. 小数
2.1 注意事项
- 在java中,小数有float和double,所有的小数的默认类型都是double
- 在java中,给一个小数赋值给float类型时,要在小数后面加**“f”或者“F”**
特别注意:
- 在计算机中,小数是以一个近似值存储的,所以最好不要使用小数进行四则运算,后续学习会学习BigDecimal处理小数运算
2.2 小数的赋值方式
i. 正常赋值、
- 直接在= 右边输入一个小数就行,如果小数点前为0,可以省略这个0不写
double num = 3.14;
ii. 科学计数法
- 尾数e整数 => 3.14159e4 注意:e前面的值一定是一个 1<x<10 (1,10)
double num = 31415.92; // 正常表示
double num = 3.141592E4; //科学计数法表示 效果是一样的
3.布尔(逻辑)型
3.1 注意事项
- boolean类型只有两个值:true和false
- 所以boolean 只能赋 true false 这两个值
- 实际存储时,1代表true,2代表false,但是java中不能用1和2给boolean赋值(编译器不能通过)
3.2 布尔型的赋值方式
- 直接在 = 右边输入 true 或者 false
boolean flag = true; //输出结果就是 true
4. 字符型
4.1 注意事项
- 字符型赋值是通过一组单引号引起来的单个字符。(不能是0个字符也不能是多个字符也不能是双引号)
- 字符型还能通过一个数字赋值 (一个字符其实就是对应的一个数字),char类型表示的字符真实存储时是按照字 符集合表中字符对应的数字进行存储的。比如:A->65 a->97
- char类型可以参与四则运算
4.2 字符型的赋值方式
i. 直接赋值
- 通过一组单引号引起来的单个字符来赋值
char ch = 'A';// 记住''内只能是一个字符,也不能是0个
ii. 数字赋值
- 通过一个数字赋值(其实就是字符集合里面对应字符的数字)
char ch = 25919; //输出的结果是 政
iii.Unicode赋值
- 通过Unicode表中的数字赋值
ch = '\u0000'; //输出的结果是 一个空格
4.3 转义字符
- 在java中通过 \ 将一个字符的本身含义发生转变。转义字符可以给char类型赋值也可以之间在字符串中 使用
常见的转义字符 :
- \t :空格(8位)
System.out.println("abcdefghigklmn");
System.out.println("\tabcdefghigklmn");
System.out.println("abcd\tefghigklmn");
System.out.println("abcdefgh张三\tigklmn");
- 运行结果
- \n :换行
System.out.print("Hello,");
System.out.println("World");
System.out.println("用了转义字符之后");
System.out.print("Hello,\n");
System.out.print("World");
- 运行结果
- 原样输出 \ ‘’ “”
System.out.print("\\");
System.out.print("\"");
- 运行结果