第4章 JAVA基础3

来源:互联网 发布:大非农数据一定准确吗 编辑:程序博客网 时间:2024/06/07 17:11

4.1运算符

算数运算符(双目运算符)
加/减运算符:+,-
乘/除/求余运算符:*,/,%

自增/自减运算(单目运算符)
自增:++(如果++放在前面,表示先自增再使用。如果++放在后面,表示先使用再自增)
自减:–(同上)

关系运算符(双目运算符)
大于/小于/等于/大于等于/小于等于/不等于:

  ><,==,>=,<=,!=

符合条件返回true,否则false

逻辑运算符(双目,单目运算符)
逻辑与:&&(左右都为true,返回true,否则返回false。注意:逻辑与又叫短路与,当左边为false时,不会继续执行右边的运算)
逻辑或:||(左右都为false,返回false,否则返回true。注意:逻辑或又叫短路或,当左边为true时,不会继续执行右边的运算)
逻辑非:!

赋值运算符(双目运算符)
赋值符:=
扩展赋值运算符:+=,-=,*=,/=

位运算符(单目,双目运算符)
位与:&(当两边都为1时,为1,其他情况都为0)
位或:|(当两边都为0时,为0,其他情况都为1)
位非:~(对每一位取反)
位异或:^(相异为1,相同为0)
左移:<<(如果左移的变量是int型,位移的位数要先与32求余。如果是long型,位移的位数要先与64求余)补0
右移:>>(同上)补符号位
无符号右移:>>>补0

分隔符
[ ]:在数组中使用
( ):用来改变结合顺序
. :获取对象属性或者调用对象方法
, :将相同类型的变量分隔开
; :一行代码的结束符

三目运算符
三目运算符:A?B:C(如果A为真,执行B,否则执行C)

有多种功能的运算符
+:当两边都是数值时,作为加法运算符。
当两边都是字符串时,作为字符串连接符。
当一边是字符串,一边是数字时,将数字自动转换成字 符串,再将字符串连接。
&和|:当两边都是数值时,作为位运算符。
当两边都是逻辑值时,作为逻辑与或运算符,但不是 短路逻辑运算符

4.2 表达式

表达式是运算符和操作数的结合,它是任何一门编程语言的关键组成部分;表达式允许程序员进行数学计算、值的比较、逻辑操作以及在Java中进行对象的操作。在Java中,大部分运算符都是从左到右结合,只有单目运算符和赋值运算符例外。

运算符的优先级(由高到低)和结合性

这里写图片描述

4.3 流程控制

4.3.1 分支语句

1. if-else语句
使用一:if语句单独使用
格式:if(<表达式>){[代码块]}
解释:表达式的返回值必须是boolean类型(instanceof,逻 辑运算,关系运算,位运算(当两边都是boolean))。
当表达式为true时,执行代码块,否则不执行。
举例:

int a = 5;//ifif(a == 5) {    System.out.println("a == 5");}

使用二:if-else结合使用
格式:if(<表达式>){[代码块A]}else{[代码块B]}
解释:表达式的返回值必须是boolean类型(instanceof,逻辑运算,关系运算)。
当表达式为true是,执行代码块A,否则执行代码块B。
举例:

//if-elseif(a > 5) {    if(a < 10) {        System.out.println("10 > a > 5");    } else {        System.out.println("a >= 10");    }} else {    System.out.println("a < 5");}

注意:if-else可以内嵌使用

使用三:if-else if
格式:if(<表达式A>){[代码块A]}else if(<表达式B>){[代码块B]}else{[代码块C]}
解释:表达式的返回值必须是boolean类型(instanceof,逻 辑运算,关系运算)。
当表达式A为true,运行代码块A,否则,继续执行表 达式B,如果表达式B为true,运行代码块B,否则,运 行代码块C。
注意:如果表达式A为true,那么表达式B不会执行。
举例:

//if-else ifif(a <= 0) {    System.out.println("a <= 0");} else if(a < 5) {    System.out.println("0 < a < 5");} else {    System.out.println("a >= 5");}

2. switch语句
使用:switch与case,break,default配合使用。
格式:switch(<表达式>){
case 常量值1:
[代码块A]
[break;]
case 常量值2:
[代码块B]
[break;]
default:
[代码块C]
[break;]
}
解释:
表达式的返回值必须是整型或者字符型。
如果表达式的值与常量值1相等,执行代码块A,如果代码块A后面有break,则跳出switch语句,如果没有break,继续执行代码块B,直到遇到break为止。如果,表达式无法与任何一个case匹配,则执行default后面的代码块。
举例:

//switchswitch(a) {    case 5:        System.out.println("a = 5");    case 6:        System.out.println("a = 6");        break;        default:            break;}

4.3.2 循环语句

1. for循环
使用:for单独使用
格式:for([表达式1]; [表达式2]; [表达式3]){[代码块]}
解释:表达式1,一般负责变量初始化
表达式2,值为boolean类型,称为循环条件
表示式3,一般用来修改变量值
2. while循环
使用:while单独使用。
格式:while(<表达式>){
[代码块]
}
解释:表达式的返回值必须是boolean类型(instanceof,逻辑运算,关系运算)。

3. do-while循环
使用:do-while单独使用
格式:do{[代码块]}while(<表达式>);
解释:表达式的返回值必须是boolean类型(instanceof,逻 辑运算,关系运算)。
循环控制(break和continue)
break:跳出循环或者switch语句。
continue:跳过continue后续的循环体中的语句,直接进行下一次循环。

举例:

int a = 10;while(a > 0) {    a --;    if(a == 3) {        break;    }    System.out.println("a = " + a);}//continuea = 5;while(a > 0) {    a --;    if(a == 3) {        continue;    }    System.out.println("bbb" + "a = " + a);}
原创粉丝点击