运算符
1.1 赋值运算符
- 赋值运算符
-
= : 把右边的赋值给左边,如果右边是个运算,需要把运算结果赋值给左边
-
+= : 左边和右边相加,结果赋值给左边
-
-= : 左边 减去 右边 结果赋值给左边
-
*= .....
-
/= .....
-
%= .....
- i = i + 10;
- i += 10;
-
虽然两个式子是等价的,但是还不一样, i++ 和 += 这些写法,不需要强制转换,当然精度还是会丢失,这种写法会自动帮我们强制转换
-
但是像 i = i+10; 这种 如果 i 是byte类型 或者short类型 就需要强制转换
1.2字符串连接符
-
- 即是加减运算符,也是字符串连接符,用于把多个字符串拼接成一个字符串
- 字符串 用 " " 双引号表示
1.3三目运算符
也可以叫三元运算符
boolean条件表达式 ? 真语句 : 假语句;
2流程控制
2.1顺序结构
严格从上往下 从左到右执行
2.2分支结构
通过某个判断条件,选择性执行某一个分支
2.2.1 if …else
-
语法结构
-
第一种结构 : 有不执行情况
-
if( boolean表达式 ){ 表达式为true 就执行java代码 为false就不执行
-
java代码;
-
java代码;
-
}
-
第二种结构 : 没有不执行情况
-
if( boolean表达式 ){ 表达式为true 就执行java代码1 为false就执行 else 中 java代码2
-
java代码1;
-
java代码1;
-
}else{
-
java代码2;
-
......
-
}
-
第三种结构 : 有不执行情况
-
if( boolean表达式 ){
-
java代码1;
-
java代码1;
-
}else if( boolean表达式 ){
-
java代码2;
-
......
-
}
-
第四种结构 : 没有不执行情况
-
if( boolean表达式 ){
-
java代码1;
-
java代码1;
-
}else if( boolean表达式 ){
-
java代码2;
-
......
-
}else{
-
.....
-
}
-
注意 : if分支语句,只会有一个分支执行,一个执行 整个分支结束
-
上面 1,3 有不执行情况, 2,4 一定会有一个分支执行
2.2.2 switch
- switch语句
-
1.7之前 只能传入 int整型(能传入整型,也就可以传入 byte,short,char,自动类型转换)
-
1.7开始,包括1.7,可以传入 字符串
- 语法 :
-
switch( 值 ){
-
case 值 :
-
java代码;
-
......
-
break;
-
case 值 :
-
java代码;
-
......
-
break;
-
case 值 :
-
java代码;
-
......
-
break;
-
default :
-
java代码;
-
}
- default 可以没有,如果没有的话,就有不执行的情况,
-
如果所有的case 都不符合条件,就执行default
注意 break : 必须要写,如果不写 就会发生case穿透现象
合并 利用case穿透完成
2.3循环结构
重复执行某些代码很多次
2.3.1 for
- for 循环 :
-
计数循环,在某个次数范围内,重复执行某些代码
- 语法 :
-
for( 表达式1 ; 表达式2 ; 表达式3 ){
-
// 循环体
-
java代码;
-
}
- …
- 先执行表达式1,并且只执行一次
- 执行表达式2,结果必须是boolean型,如果是true,就执行循环体,如果是false就终止循环
- 假设是true,执行循环体,循环体执行完成后,执行表达式3
- 执行完表达式3之后,再执行表达式2,如果是false 终止循环,如果是true 执行循环体,执行表达式3 , 执行表达式2 …
- 表达式1 : 初始条件
- 表达式2 : 终止条件
- 表达式3 : 步长
- 循环三要素 :
-
初始值,终止条件,步长
-
缺一不可
2.3.2 while
- while循环 是真假循环,在某个条件为真的情况下执行
- 语法 :
-
while( boolean表达式 ){
-
循环体;
-
}
2.3.3 do… while
- while 有不执行情况,所以执行次数是 0~N次
- 但是 do…while… 能够保证代码 至少执行一次, 1~N次
- 语法 :
-
do{
-
}while(boolean表达式);
2.4跳转语句
2.4.1 Break
- break语句
-
1 用于switch中,结束分支语句,避免发生case穿透
-
2 用于循环中,终止当前循环
- break 结束循环
- continue 跳过当前次,继续下一次
- return 结束方法,并返回一个数据
2.4.2 Continue
continue : 跳过当前次循环,继续下次