1.逻辑运算符
& | ^ ! && ||
& 有false则false
| 有true则true
^ 相同则false,不同则true
! !true则false !false则true
&& 和&的结果一样,但&&有短路效果,左边为false,右边不运算
|| 和|的结果一样,但||有短路效果,左边是true,右边不运算
注意事项:
逻辑运算符一般连接 boolean 类型的表达式或数值
表达式:就是用运算符把常量或者变量连接起来的符合java语法的式子。
算术表达式:a + b
比较表达式:a == b(条件表达式)
2.位运算符
& 位与 有0则是0
| 位或 有1则1
^ 位异或 相同则是0,不同则是1 一个数据位异或两次结果是它本身
~ 位非 按位取反
<< 向左移动 左边多余为丢弃, 右边补0
>> 向右移动 右边多余丢弃,左边补0,如果左边是1,左边补1
>>> 无符号右移 无论最高位是0还是1,左边补齐0
3.三元运算符
格式:
int c = (a > b)? a : b;
4.键盘录入
模板:
a. 导包
import java.util.Scanner;
b.创建键盘录入对象
Scanner sc = new Scanner(System.in);
c.数据录入
int a = sc.nextInt();
5.流程控制语句
顺序结构
选择结构
循环结构
6.顺序结构
按从上往下的顺序执行
7.选择结构
if语句结构:
a.
格式:
if(比较表达式) {
语句体;
}
执行流程:
执行比较表达式,结果是true执行语句体;结果是false,则不执行语句体。
b.
格式:
if(比较表达式) {
语句体1;
}else {
语句体2;
}
执行流程:
执行比较表达式,结果是true,执行语句体1;结果是false,执行语句体2
注意事项:
else后面是没有比较表达式的,只有if后面有。
c.
格式
if(比较表达式1) {
语句体1;
}else if(比较表达式2) {
语句体2;
}else if(比较表达式3) {
语句体3;
}
...
else {
语句体n+1;
}
执行流程:
首先计算比较表达式1,如果是true,就执行语句体1,if语句结束。
如果是false,接着计算比较表达式2,如果是true,就执行语句体2,if语句结束。
如果是false,接着计算比较表达式3,如果都是false,就执行语句体n+1。
注意事项:
最后一个else可以省略,但是建议不要省略,可以对范围外的错误值提示
if语句的注意事项
比较表达式无论简单还是复杂,结果是boolean类型
if语句控制的语句体如果是一条语句,是可以省略大括号的;如果是多条,不能省略。
建议:永远不要省略。
一般来说,有左大括号,就没有分号,有分号,就没有左大括号。
else后面如果没有if,是不会出现比较表达式的。
三种if语句其实都是一个语句,只要有一个执行,其他的就不再执行
switch语句结构:
格式:
switch(表达式) {
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
…
default :
语句体n+1;
break;
}
格式分析:
switch:说明这是switch语句。
表达式:可以是byte,short,int,char
JDK5以后可以是枚举
JDK7以后可以是字符串
case:后面的值就是要和表达式进行比较的值
break:表示程序到这里中断,跳出switch语句
default:如果所有的情况都不匹配,就执行这里,相当于if语句中的else
执行流程:
先计算表达式的值;然后和case后面的匹配,如果有就执行对应的语句,否则执行default控制的语句
注意事项:
case 后面的值只能是常数并且不能重复;
break 在最后可以省略,在其它地方不能省略,会发生case穿透,建议不要省略
default 不管放在前面还是后面都是最后执行,建议放在最后; default 可以省略,但不要省略,因为它的作用是对不正确的进行提示
switch 语句的结束是:执行到 switch 语句的右大括号;遇到 break
选择结构 if 语句和 switch 语句的区别
能有switch语句的都能用if语句完成
switch语句是在固定值时使用;if语句是在范围和判断区间时使用。
|
|