Java 运算符、输入、选择流程控制详细讲解
第一章 运算符
1.1 算术运算符的概述和用法
-
运算符
-
对常量和变量进行操作的符号称为运算符
-
表达式
-
用运算符把常量或者变量连接起来符号 java 语法的式子就可以称为表达式。不同运算符连接的式子体现的是不同类型的表达式。
-
定义两个 int 类型的变量 a,b,做加法(a + b)
-
常用运算符
-
算术运算符
-
赋值运算符
-
关系运算符
-
逻辑运算符
-
三元运算符
1.1.1 算数运算符概述
-
什么是运算符
-
就是对常量和变量进行操作的符号。
-
算数运算符有哪些
-
* +,-,*,/,%,++,--
1.1.2 代码实战
public class OperatorDemo {
复制代码
算数运算符取余和除法的区别:
-
%:取余运算符。得到的是两个相除数据的余数。
-
/:除法运算符。得到是两个相除数据的商。
-
使用场景: %:判断两个数据是否整除。::::
1.1.3 字符和字符串参与加法运算
- 字符参与运算其实是拿该字符对应的数值来操作
‘a’ 97
复制代码
-
字符串参与运算这里其实做的不是加法运算,而是<mark>字符串拼接</mark>。
-
字符串和其他类型的数据做拼接,结果是字符串类型的。
1.1.4 代码实战
public class OperatorDemo2 {
复制代码
1.1.5 自增自减运算符的概述和用法
**++,--**
运算符 :对变量做加 1 或者减 1 的操作。
++
或者 --
既可以放在变量的后面,也可以放在变量的前面。
单独使用的时候, ++
或者 --
无论是放在变量的前面还是后面,结果是一样的。
参与操作的时候:
如果 ++
或者 --
在变量的后面,先拿变量参与操作,后变量 ++
或者 --
如果 ++
或者 --
在变量的前面,先变量做 ++
或者 --
,后拿变量参与操作
1.1.6 代码实战
public class OperatorDemo {
复制代码
1.2 赋值运算符的概述和用法
1.2.1 赋值运算符分类
-
基本的赋值运算符:=
-
扩展的赋值运算符:
+=,-=,*=,/=,%=
-
a+=20;
相当于a =a + 20;
1.2.2 代码实战
public class OperatorDemo {
复制代码
1.3 关系运算符的概述和使用
1.3.1 基本使用及注意事项
关系运算符包含以下内容:
==,!=,>,>=,<,<=
关系运算符的结果都是 boolean 型,也就是要么是 true,要么是 false。
注意事项:关系运算符“==”不能误写成“=”。
1.3.2 代码实战
public class OperatorDemo {
复制代码
1.4 逻辑运算符的概述和使用
1.4.1 逻辑运算符概述
逻辑运算符用于连接关系表达式,在 Java 中不可以写成 3<x<6
,应该写成 x>3 && x<6
。
-
逻辑运算符有哪些
&& || !
-
结论:
-
&&
:有 false 则 false。 -
||
:有 true 则 true。 -
!
:非 false 则 true,非 true 则 false。
1.4.2 代码实战
public class OperatorDemo {
复制代码
1.5 三元运算符的概述和使用
1.5.1 三元运算符概述
-
格式
-
(关系表达式)?表达式1:表达式2;
-
如果条件为 true,运算后的结果是表达式 1;如果条件为 false,运算后的结果是表达式 2;
1.5.2 代码实战
public class OperatorDemo {
复制代码
1.5.3 三元运算符练习之比较两个整数是否相同
public class OperatorTest {
复制代码
第 2 章 键盘输入
2.1 键盘输入的基本步骤
2.1.1 键盘输入 数据概述
我们目前在写程序的时候,数据值都是固定的,但是实际开发中,数据值肯定是变化的,所以,把数据改进为键盘录入,提高程序的灵活性。
键盘录入数据的步骤:
-
导包(位置放到 class 定义的上面)
import java.util.Scanner;
-
创建对象
Scanner sc = new Scanner(System.in);
-
接收数据
int x = sc.nextInt();
2.1.2 代码实战
import java.util.Scanner;
复制代码
2.2 Scanner 录入数据练习之求两个整数的和
键盘录入两个数据,并对这两个数据求和,输出其结果:
import java.util.Scanner;
复制代码
第 3 章 选择流程控制语句
在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。也就是说程序的流程对运行结果有直接的影响。所以,我们必须清楚每条语句的执行流程。而且,很多时候我们要通过控制语句的执行顺序来实现我们要完成的功能。
-
流程控制语句分类
-
顺序结构
-
选择结构
-
循环结构
3.1 流程控制语句之顺序结构概述和使用
3.1.1 顺序结构概述
是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的。
3.1.2 顺序流程流程图
[图片上传失败...(image-7441b0-1650024410137)]
3.1.3 代码实战
public class OrderDemo {
复制代码
3.2 if 语句的格式
3.2.1 if 语句格式 1 的概述和使用
if 语句第一种格式:
if(关系表达式) {
复制代码
执行流程:
首先判断关系表达式看其结果是 true 还是 false
如果是 true 就执行语句体
如果是 false 就不执行语句体
代码实战
public class IfDemo {
复制代码
3.2.2 if 语句格式 2 的概述和使用
if 语句第二种格式:
if(关系表达式) {
复制代码
执行流程:
首先判断关系表达式看其结果是 true 还是 false
如果是 true 就执行语句体 1
如果是 false 就执行语句体 2
代码实战
public class IfDemo2 {
复制代码
3.2.3 if 语句格式 3 的概述和使用
if 语句第三种格式:
if(关系表达式1) {
复制代码
执行流程:
首先判断关系表达式 1 看其结果是 true 还是 false
如果是 true 就执行语句体 1
如果是 false 就继续判断关系表达式 2 看其结果是 true 还是 false
如果是 true 就执行语句体 2
如果是 false 就继续判断关系表达式…看其结果是 true 还是 false
…
如果没有任何关系表达式为 true,就执行语句体 n+1
代码实战
public class IfDemo3 {
复制代码
3.3 if 语句的练习
3.3.1 if 语句练习之获取两个整数的较大值
import java.util.Scanner;
复制代码
3.4 switch 语句的格式和执行流程概述
3.4.1 格式解释
3.4.1 格式解释:
switch(表达式) {
复制代码
switch 表示这是 switch 语句
表达式的取值: byte,short,int,char
JDK5 以后可以是枚举
JDK7 以后可以是 String
case 后面跟的是要和表达式进行比较的值
语句体部分可以是一条或多条语句
break 表示中断,结束的意思,可以结束 switch 语句
default 语句表示所有情况都不匹配的时候,就执行该处的内容,和 if 语句的 else 相似。
3.4.2 执行流程
首先计算出表达式的值
其次,和 case 依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到 break 就会结束。
最后,如果所有的 case 都和表达式的值不匹配,就会执行 default 语句体部分,然后程序结束掉。
3.5 switch 语句的练习
switch 语句的案例根据数字输出对应星期
import java.util.Scanner;