Java 学习笔记(三)数据类型

数据类型
程序中的数据分为不同的类型,如:整数,小数,字符,布尔,字符串等。不同类型的数据在内存中的存储方式不同,数据的取值方式不同,允许的操作也不同。
数据类型的分类
Java 的数据类型可以分为两大类,分别是基本类型和引用类型
基本类型包括:整数,小数,字符,布尔
引用类型包括:类,接口,数组,枚举,注解
基本类型
基本数据类型,总共有四类,八种
整数类型,包括:
byte,short,int,long4 种
| 类型 | 占用存储空间 | 存储范围 |
| ------- | ------------ | ---------------------- |
| byte | 1 字节 | -128~127 |
| short | 2 字节 | -32768~32767 |
| int | 4 字节 | -2147483648~2147483647 |
| long | 8 字节 | -263 ~ 263 -1 |
- 所有的整数值,默认为 int 类型
- 在对 byte 和 short 类型赋值时,会先判断该值是否超出 int 类型的取值范围,如果超了,会报错,如果没有超出,会再判断该值是否超出了 byte 或者 short 的取值范围,如果超了,会报错,如果没超,则赋值成功
- 在对 long 类型赋值时,会先判断该值是否超出 int 类型的取值范围,如果没超,会赋值成功;如果超了,会报错,需要在该值后面加上 L
浮点类型
| 类型 | 占用存储空间 | 精度 |
| -------- | ------------ | ------------- |
| float | 4 字节 | 7 位有效数字 |
| double | 8 字节 | 15 位有效数字 |
- 浮点类型的值默认为 double 类型
- 在对 float 类型赋值的时候,需要在该值后面加上 f 或者 F
字符类型
| 类型 | 占用存储空间 | 存储范围 |
| ------ | ------------ | -------- |
| char | 2 字节 | 0~65535 |
- 字符类型只能存放一个字符,并且使用英文的单引号引起来
- 整数类型和字符类型可以相互赋值
```java
class Example01 {
public static void main(String[] args) {
// char 类型可以存放字母,中文,数字类型的字符
char cr = 'a';
cr = '汉';
cr = '5';
/*
整数类型和字符类型可以相互赋值
ASCII:
'a':97, 'b':98...
'A':65, 'B':66...
'0':48, '1':49...
*/
cr = 100;
// 输出结果:d
System.out.println(cr);
cr = 65;
// 输出结果:A
System.out.println(cr);
int i = 1;
i = 'A';
// 输出结果:65
System.out.println(i);
}
}
```
布尔类型
- 布尔类型 boolean 占一个字节
- 有且只有两个取值:true 和 false
###### 基本类型转换
除了 boolean 类型之外,其他 7 中数据类型之间是可以相互转换的
当取值范围小的类型给取值范围大的类型赋值,则构成自动类型转换
当取值范围大的类型给取值范围小的类型赋值,则需要进行强制类型转换
short和char之前需要强转当对
byteshortchar类型赋值时,没有超出当前数据类型取值范围,可以直接赋值当对
byteshortchar类型进行混合运算时,会先转为int类型,再进行计算当多种类型进行混合运算时,结果为当前计算中取值范围大的类型
运算符
算术运算符
加 + 减 - 乘 * 除 / 求余 % 自加 1 ++ 自减 1 --
++ 和 -- 都分为前置和后置,前置是先自身加/减,再进行运算;后置是先进行运算,再进行自身加/减
赋值运算符
= += -= *= /= %=
关系运算符
> < >= <= == !=
关系运算符,如果满足条件,则返回结果为 true
逻辑运算符
逻辑与
&表示并且,同时
- 当两个条件都为真,则结果为真
逻辑或
|表示或者
- 当有一个条件为真,则结果为真
逻辑异或
^
- 当两个条件的结果不相同,则结果为真
逻辑非
!
- 对结果取反
短路与
&&表示并且,同时
- 当第一个条件为假,则结果为假,不再判断第二个条件
短路或
||表示或者
- 当第一个条件为真,则结果为真,不再判断第二个条件
三目运算符
语法格式:条件 ? 代码 1 : 代码 2
执行流程:如果条件成立,执行代码 1,如果条件不成立,执行代码 2
使用场景:需要根据条件从两种结果当中选择其中一个的时候











评论