- 运算符
运算优先级
字符串拼接符优先级
运算符分类
结合顺序
运算符
由高到低
分隔符
左结合
. [] ( ) ; ,
一元运算符
右结合
! ++ – - ~
算术运算符
移位运算符左结合
* / % + -
<< >> >>>
关系运算符
左结合
< > <= >= instanceof == !=
逻辑运算符
左结合
! && || ~ & | ^
三目运算符
右结合
布尔表达式?表达式1:表达式2
赋值运算符
右结合
= *= /= %= += -= <<= >>= >>>= &= *= |=
"+" 可用于数值计算,当有一方是字符时,则为将左右两个数据转化成字符串连在一起。
当" +" 任意一侧为字符串时,系统将自动将两侧转化成字符串,做字符串链接操作。
当进行System.out.println(var)打印操作的时候,均自动转化为字符串进行输出。 - 表达式:
表达式是指由(常量、变量、操作数)与运算符所组合而成的语句。
三目运算符:
布尔类型值? 值1:值2形如:x?y:z
释义:计算x的值,若为true,则表达式的值为y;若为false,则表达式的值为z
- 流程控制
●顺序结构
○代码从上到下,从左到右,依次执行
●分支结构
○判断
○单分支
○语法if()if(布尔表达式){ 语句块; }
○双分支
○if{}else{}if(布尔表达式){ 语句块;//if分支 }else{ 语句块;//else分支 }
○多分支
○if{}else if{}if(布尔表达式){ 语句块; }else if(布尔表达式){ 语句块; }else{ 语句块; }
○switch caseswitch (表达式) { case 值1: 语句; break; case 值2: 语句; break; default: 语句; break; }
●循环结构
○whilewhile(布尔表达式){ 循环体; //一条或多条语句 }
○do-whiledo { 循环体; }while(条件判断表达式);
○for
○增强for循环 foreachfor(表达式1;表达式2;表达式3) { 循环体; //一条或多条语句 }
○break 跳出当前循环,结束
○continue 跳过本次循环,直接执行下一次循环
三种循环结构的异同点:
- 用while和do…while循环时,循环变量在循环体之前初始化,而for循环一般在语句1进行初始化。
- while 循环和for循环都是先判断表达式,后执行循环体;而do…while循环是先执行循环体后判断表达式。也就是说do…while的循环体最少被执行一次,而while循环和for就可能一次都不执行。
- 这三种循环都可以用break语句跳出循环,用continue语句结束本次循环。