赋值运算是从右往左
复合赋值运算:+= -= /= %= a+=1;//a=a+1;
关系运算符 注意:返回值是boolean类型
逻辑运算符
与 如果两侧都为真,则结果为真;如果有一侧为假,则结果为假。
& 不论左侧是真还是假,右侧都进行运算
&& 左侧为真,右侧进行运算;左侧为假,右侧不参与运算
或 如果两侧都为假,则结果为假;如果有一侧为真,则结果为真。
| ||
非 ”取反“ 真—》假 假–》真—》假
!
异或 ”异“如果两侧相同,则结果为假;如果两侧不相同,则结果为真。
^
逻辑运算结果都是boolean类型
三元运算符
(条件表达式)?表达式1 : 表达式2
条件表达式的返回结果是boolean类型
运行过程
计算”条件表达式“的值
|–如果结果为true,将表达式1的结果作为整个三元运算符结果返回
|–如果结果为false,将表达式2的结果作为整个三元运算符结果返回
控制流程
如何获取键盘输入
1.导入相关的类 import java.util.Scanner :写在类的外面、文件的最上面
2.创建Scanner对象 Scanner sc = new Scanner(System.in);
3.获取键盘输入
String str = sc.next(); //输入字符串
int age = sc.nextInt();//输入整型
import java.util.Scanner;
Scanner sc = new Scanner(System.in);
String str = sc.next();
分支结构 ----代码有选择的运行
switch–case
switch(表达式){
case 常量1:
语句1
break;
case 常量2:
语句2
break;
case 常量3:
语句3
break;
default:
语句4
}
…
…
…
1.返回值类型必须是以下的几种类型之一:byte,short,char,int,枚举,String(jdk7及以后的版本支持)
2.表达式的返回值分别和常量进行比较,匹配哪个常量就运行常量后的代码,直到碰到break结束(从switch-case结构跳出)
3.如果没有配置任何一个常量就会运行default中的内容,default及其之后的内容不是必需的
4.break不是必须要有的,如果某个分支没有break,会继续进行该分支之后的代码,直到遇到break结束
循环结构 --反复去做某件事
1. for 循环
for(初始化语句;条件表达式;控制语句){
循环体
}
1)运行初始化语句;
2)运行条件表达式
| --返回true 运行3)
| --返回false 结束循环 — 从for循环的{}中跳出
3)运行循环体
4)运行控制语句,再运行2)
注意:初始化语句只会运行一次
2.while 循环
for(初始化语句;条件表达式;控制语句){
循环体
}
while循环 ----循环
while(条件表达式){
循环体
}
for循环和while循环可以相互转换
for —> while
初始化语句
while(条件表达式){
循环体
控制语句
}
3.do-while循环
do-while循环
do{
循环体
}while(条件表达式);
特点:
1.最少运行一次循环体
2.()后面有;
do-while和while的区别:
do-while最少运行一次循环体
while进行0次循环体