1
1436141288
V1
2022/03/13阅读:38主题:全栈蓝
java基础
Java基础
01变量概述
A: 什么是变量?
变量是内存中装载数据的小盒子,你只能用它来存数据和取数据。
02Java中数据类型四类八种
A: 数据类型四类八种
四类 | 八种 | 字节数 | 数据表示范围 |
---|---|---|---|
整型 | byte | 1 | -128~127 |
整型 | short | 2 | -32768~32767 |
整型 | int | 4 | -2147483648~2147483648 |
整型 | long | 8 | -263~263-1 |
浮点型 | float | 4 | -3.403E38~3.403E38 |
浮点型 | double | 8 | -1.798E308~1.798E308 |
字符型 | char | 2 | 表示一个字符,如('a','A','0','我') |
布尔型 | boolean | 1 | 只有两个值true与false |
03常量和数据类型
常量的定义
a: 整形常量默认是int类型
b: 小数常量默认是double类型
c: 定义长整形数据如果值超过int取值范围后面要+"L"
d: 定义float类型的数据后面要+"f" 否则默认是double
04变量创建的三要素
A: 定义变量的语法格式:
数据类型 变量名 = 变量值;
int a = 100;
05数据类型转换_自动转换
A: 自动类型转换
表示范围小的数据类型转换成范围大的数据类型,这种方式称为自动类型转换
自动类型转换格式:
范围大的数据类型 变量 = 范围小的数据类型值;
如:double d = 1000;
或 int i = 100;
double d2 = i;
06数据类型转换_强制转换
A: 强制类型转换
a: 表示范围大的数据类型转换成范围小的数据类型,这种方式称为强制类型转换
b: 强制类型转换格式:
范围小的数据类型 变量 = (范围小的数据类型) 范围大的数据类型值;
如:int i = (int)6.718; //i的值为6
或double d = 3.14;
int i2 = (int)d; //i2的值为3
07算数运算符
A: 常见操作
运算符 | 运算规则 | 范例 | 结果 |
---|---|---|---|
+ | 正号 | +3 | 3 |
+ | 加 | 2+3 | 5 |
+ | 连接字符串 | “中”+“国” | “中国” |
- | 负号 | int a=3;-a | -3 |
- | 减 | 3-1 | 2 |
* | 乘 | 2*3 | 6 |
/ | 除 | 5/2 | 2 |
% | 取模 | 5/2 | 1 |
++ | 自增 | int a=1;a++/++a | 2 |
-- | 自减 | int b=3;a--/--a | 2 |
B: 注意事项
*a:加法运算符在连接字符串时要注意,只有直接与字符串相加才会转成字符串。
*b:除法“/”当两边为整数时,取整数部分,舍余数。当其中一边为浮点型时,按正常规则相除。
*c:“%”为整除取余符号,小数取余没有意义。结果符号与被取余符号相同。
*d:整数做被除数,0不能做除数,否则报错。
*e:小数做被除数,整除0结果为Infinity,对0取模结果为NaN
++、--
A:算数运算符++、--的使用
a: ++运算符,会在原有值的基础上自增1
b: --运算符,会在原有值的基础上自减1。
B:++ -- 位置的使用
a:++,--运算符后置时,先使用变量a原有值参与运算操作,运算操作完成后,变量a的值自增1或者自减1;
b:++,--运算符前置时,先将变量a的值自增1或者自减1,然后使用更新后的新值参与运算操作。
08赋值运算符
A: 赋值运算符的使用
运算符 | 运算规则 | 范例 | 结果 |
---|---|---|---|
= | 赋值 | inta=2 | 2 |
+= | 加后赋值 | int a=2,a+=2 | 4 |
-= | 减后赋值 | int a=2,a-=2 | 0 |
*= | 乘后赋值 | int a=2,a*=2 | 4 |
/= | 整除后赋值 | int a=2,a/=2 | 1 |
%= | 取模后赋值 | int a=2,a%=2 | 0 |
09比较运算符
A:比较运算符的使用
运算符 | 运算规则 | 范例 | 结果 |
---|---|---|---|
== | 相等于 | 4==3 | False |
!= | 不等于 | 4!=3 | True |
< | 小于 | 4<3 | False |
❝|大于 | 4>3 |True <=| 小于等于 |4<=3 |False = |大于等于 |4>=3 |True
❞
10逻辑运算符
* A: 逻辑运算符的使用
运算符 | 运算规则 | 范例 | 结果 |
---|---|---|---|
& | 与 | false&true | False |
或 | false | true | |
^ | 异或 | true^flase | True |
! | 非 | !true | Flase |
&& | 短路与 | false&&true | False |
|| | 短路或 | false || true | True |
规律小结:
❝短路与&&:参与运算的两边数据,有false,则运算结果为false; 短路或||:参与运算的两边数据,有true,则运算结果为true; 逻辑非! : 参与运算的数据,原先是true则变成false,原先是false则变成true。
❞
11三元运算符
A: 格式:
(条件表达式)?表达式1:表达式2;
12运算符优先级
优先级 | 描述 | 运算符 |
---|---|---|
1 | 括号 | ()、[] |
2 | 正负号 | +、- |
3 | 自增自减,非 | ++、--、! |
4 | 乘除,取余 | *、/、% |
5 | 加减 | +、- |
6 | 移位运算 | <<、>>、>>> |
7 | 大小关系 | >、>=、<、<= |
8 | 相等关系 | ==、!= |
9 | 按位与 | & |
10 | 按位异或 | ^ |
11 | 按位或 | | |
12 | 逻辑与 | && |
13 | 逻辑或 | || |
14 | 条件运算 | ?: |
15 | 赋值运算 | =、+=、-=、*=、/=、%= |
16 | 位赋值运算 | &=、|=、<<=、>>=、>>>= |
13创建引用类型变量公式
A: 创建引用类型变量公式
a : 引用数据类型的定义格式
与定义基本数据类型变量不同,引用数据类型的变量定义及赋值有一个相对固定的步骤或格式。
数据类型 变量名 = new 数据类型();
b: 引用数据类型的使用
每种引用数据类型都有其功能,我们可以调用该类型实例的功能。
变量名.方法名();
14if语句格式第一种
A: if语句格式第一种
a: 书写格式
if(比较表达式) {语句体; }
b:执行流程:
先计算比较表达式的值,看其返回值是true还是false。
如果是true,就执行语句体;
15if语句格式第二种
A: if语句格式第二种
a: 书写格式
if(比较表达式) {
语句体1;
}else {
语句体2;
}
b:执行流程:
首先计算比较表达式的值,看其返回值是true还是false。
如果是true,就执行语句体1;
如果是false,就执行语句体2;
16if语句格式第三种
A: if语句格式第三种
a: 书写格式
if(比较表达式1) {
语句体1;
}else if(比较表达式2) {
语句体2;
}else if(比较表达式3) {
语句体3;
}
...
else {
语句体n+1;
}
b:执行流程:
首先计算比较表达式1看其返回值是true还是false,
如果是true,就执行语句体1,if语句结束。
如果是false,接着计算比较表达式2看其返回值是true还是false,
如果是true,就执行语句体2,if语句结束。
如果是false,接着计算比较表达式3看其返回值是true还是false,
如果都是false,就执行语句体n+1。
17if语句和三元运算符的互换
A: 三元运算符
a: 概念: 用来完成简单的选择逻辑,即根据条件判断,从两个选择中选择一种执行
b: 使用格式: (条件表达式)?表达式1:表达式2;
c: 运算规则
1: 判断条件表达式,结果为一个布尔值
2: true,运算结果为表达式1
3: false,运算结果为表达式2
B: 使用if语句还是三元表达式
判断条件多,使用if;三元,必须有结果的, if 可以没有结果的
18while循环
A: while循环结构
a: 使用格式
初始化表达式;
while(条件){
循环体
}
b: 执行顺序
当条件是true,就执行循环体,执行完循环体后
程序再次执行while中的条件,如果条件还是true,继续执行循环体
直到条件是false的时候,循环就结束
19for循环_1
A: for循环_1
a: 使用格式
for(初始化变量 ; 条件 ; 增量){
循环体;
}
b: 各模块解释
初始化变量: 定义变量,作用是用来控制循环的次数
条件: 当条件是true,执行循环体,条件是false,结束循环
增量: 变量自增情况
20for循环_2
A: for循环的执行流程
for(1; 2; 3){4}
第一步,执行1
第二步,执行2,如果判断结果为true,执行第三步,如果判断结果为false,执行第五步
第三步,执行4
第四步,执行3,然后重复执行第二步
第五步,退出循环
21do_while循环
A: do_while循环
a: 使用格式
do{
循环体;
}while(条件);
b: 执行顺序
先执行一次循环体,然后再判断条件,如果条件为true,继续执行循环体, 如果条件为false,循环结束。
c: 特点
无条件先执行一次
22死循环
A: 死循环概述
无限循环存在的原因是并不知道循环多少次,而是根据某些条件,来控制循环
B: 死循环格式
while(true){} for(;;){}
23嵌套for循环_1
A: 嵌套循环的概述
嵌套循环是指在一个循环语句的循环体中再定义一个循环语句的语法结构。while、do…while、for循环语句都可以进行嵌套,并且它们之间也可以互相嵌套,如最常见的在for循环中嵌套for循环。
B: 嵌套循环的格式
for(初始化表达式; 循环条件; 操作表达式) {
………
for(初始化表达式; 循环条件; 操作表达式) {
执行语句
………
}
………
}
C: 各模块解释
* 总的循环次数 = 内循环次数 * 外循环的次数
* 内循环,是外循环的循环体
* 外循环,控制的是行数
* 内循环,控制的是每行的个数
24break语句
A: break语句
a: 作用:跳出所在的循环体
b: 书写位置:必须出现在循环或选择结构内
c: 举例
for(int i=0; i<10; i++) {
if(i>5) {
break;
}
System.out.println(“我爱梁思裕”+i);
}
//会从0-5输出6次“我爱梁思裕”
B: break详细解释
a: 作用
loop/switch选择或者循环过程中,我们总是满足布尔表达条件才能执行对应的代码,然而在这些逻辑过程中,可以使用一些关键字直接跳出正在执行的代码,去执行后边或者指定位置的代码,这些关键字一旦出现就可以跳转语句执行顺序。
b: 使用方式:无法单独使用,必须将break关键字置于switch或循环语句中
c: 运行规律:不需要判断任何条件,只要遇到break变直接跳出执行后续代码。会完全跳出选择或者循环结构;只能跳出最近的代码块,不能跨越多级代码块
C:循环标号
a: 为什么使用循环标号
当在双层循环或者循环内有switch选择语句时,我们发现,使用break或者continue所作用的对象##### 均是内层语句,无法直接跳出外层循环,这时就需要使用标号语句跳转了.
b: 使用方式
在外层循环外的某行前边,使用后边跟有冒号”:”的标识符,即定义完毕。
使用时当在内层循环使用break或continue时后边紧跟之前定义的标号即可
c: 运行规律
当外层循环外定义了标号
内层使用break,终止内外双层循环。
内层使用continue,终止内层循环,继续外层循环。
25continue语句
A: continue语句
a: 作用
提前结束本次循环,继续进行下次循环
b: 使用方式
无法单独使用,必须将continue关键字置于循环语句中
c:运行规律
不需要判断任何条件,只要遇到continue变直接跳出本轮循环进行下次循环
作者介绍
1
1436141288
V1