Java基础知识梳理(一)
基础概念和语法
JRE 和 JDK
- JRE(Java Runtime Environment):是Java程序的运行时环境,包含 JVM 和运行时所需要的 核心类库 。
- JDK(Java Development Kit):是Java程序开发工具包,包含 JRE 和开发人员使用的工具。
数据类型
Java的数据类型分为两大类:
- 基本数据类型 :整数 、 浮点数 、 字符 、 布尔 。
- 引用数据类型 :类 、 数组 、 接口 。
数据类型 关键字 占用内存 取值范围
字节型 byte 1个字节 -12812732767
短整型 short 2个字节 -32768
整型 int 4个字节 $-2^{31}$$2^{31}-1$$2^{63}-1$
长整型 long 8个字节 $-2^{63}$
单精度浮点数 float 4个字节 1.4013E-453.4028E+381.7977E+308
双精度浮点数 double 8个字节 4.9E-324
字符型 char 2个字节 0-65535
布尔类型 boolean 1个字节 true,false
long类型:建议数据后加L表示
float类型:建议数据后加F表示
数据类型转换
自动类型转换(隐式)
- 特点:代码不需要进行特殊处理,自动完成。
- 规则:数据范围从小到大。
强制类型转换(显式)
- 特点:代码需要进行特殊的格式处理,不能自动完成。
- 格式:范围小的类型 范围小的变量名 =(范围小的类型) 原本范围大的数据;
注意事项:
强制类型转换一般不推荐使用,因为有可能发生精度损失、数据溢出。
byte/short/char这三种类型都可以发生数学运算,例如加法“+”.
byte/short/char这三种类型在运算的时候,都会被首先提升成为int类型,然后再计算。
boolean类型不能发生数据类型转换
运算符
算数运算符:
符号 | 说明 |
---|---|
+ | 加法运算,字符串连接运算 |
- | 减法运算 |
* | 乘法运算 |
/ | 除法运算 |
% | 取模运算,两个数字相除取余数 |
++ 、 – | 自增自减运算 |
前++和后++的区别:
赋值运算符 :
符号 | 说明 |
---|---|
= | 等于号 |
+= | 加等于 |
- = | 减等于 |
*= | 乘等于 |
/= | 除等于 |
%= | 取模等 |
比较运算符:
符号 | 说明 |
---|---|
== | 比较符号两边数据是否相等,相等结果是true。 |
< | 比较符号左边的数据是否小于右边的数据,如果小于结果是true。 |
> | 比较符号左边的数据是否大于右边的数据,如果大于结果是true。 |
<= | 比较符号左边的数据是否小于或者等于右边的数据,如果小于结果是true。 |
>= | 比较符号左边的数据是否大于或者等于右边的数据,如果小于结果是true。 |
! = | 不等于符号 ,如果符号两边的数据不相等,结果是true。 |
逻辑运算符 :
符号 | 说明 |
---|---|
&& 短路与 | 两边都是true,结果是true; 一边是false,结是false;短路特点:符号左边是false,右边不再运算 |
| | 短路或 | 两边都是false,结果是false;一边是true,结果是true;短路特点: 符号左边是true,右边不再运算 |
! 取反 | ! true 结果是false; ! false结果是true |
三元运算符:
格式:数据类型 变量名 = 布尔类型表达式?结果1:结果2;
流程控制语句
判断语句 if-else
if (判断条件1) {
执行语句1;
} else if (判断条件2) {
执行语句2;
}
…
}else if (判断条件n) {
执行语句n;
} else {
执行语句n+1;
}
选择语句 switch
switch(表达式) {
case 常量值1:
语句体1;
break;
case 常量值2:
语句体2;
break;
…
default:
语句体n+1;
break;
}
循环语句 for,while
for
for(初始化表达式①; 布尔表达式②; 步进表达式④){
循环体③
}
执行流程
执行顺序:①②③④ >②③④>②③④…②不满足为止。
①负责完成循环变量初始化
②负责判断是否满足循环条件,不满足则跳出循环
③具体执行的语句
④循环后,循环条件所涉及变量的变化情况
while
初始化表达式①
while(布尔表达式②){
循环体③
步进表达式④
}
执行流程
执行顺序:①③④ >②③④>②③④…②不满足为止。
①负责完成循环变量初始化。
②负责判断是否满足循环条件,不满足则跳出循环。
③具体执行的语句
④循环后,循环变量的变化情况
中止和跳转下一次语句 break和continue
break:
使用场景:终止 switch或者循环
- 在选择结构 switch语句中
- 在循环语句中
- 离开使用场景的存在是没有意义的
continue:
使用场景:结束本次循环,继续下一次的循环
参考文档:
[java学习笔记]