一、 顺序结构(按照代码的先后顺序,依次执行)
二、选择结构(分为if和swith两种 代码要执行具体的逻辑运算进行判断,逻辑运算的结果有两个,所以产生选择,按照不同的选择执行不同的代码)
1.If语句(三种格式)
格式一:
import java.util.Scanner; public class IfDemo { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入成绩:"); int i = sc.nextInt(); if (i > 90 ){ System.out.println("优秀"); } System.out.println("结束"); }
格式二:
import java.util.Scanner; public class IfDemo1 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入性别0/1"); int i = sc.nextInt(); if(i==1){ System.out.println("成功"); } else{ System.out.println("女性"); } System.out.println("结束"); } }
执行流程:
1、if判断里面的关系表达式的结果一定要遵循结果是boolean类型的规则
2、如果关系表达式的结果是true,那么就执行语句体1,不会执行else语句
3、如果关系表达式的结果是false,那么就执行else里面的语句体2
格式三:
import java.util.Scanner; public class IfDemo2 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入0~10之间的数"); int i = sc.nextInt(); if(i >= 9){ System.out.println("A"); }else if ( i >= 6 && i < 9){ System.out.println("B"); }else{ System.out.println("C"); } System.out.println("结束"); } }
if语句编写的注意事项
1、if判断里面的关系表达式的结果一定要遵循结果是boolean类型的规则
2、if语句控制的语句体如果是一条语句,大括号可以省略如果是多条语句,就不能省略建议永远都不要省略大括号!!!!!!!
3、一般来说:有大括号就没有分号,有分号就没有大括号,if关系表达式后面跟上分号,默认有一个空语句体。
2.swith语句
注意事项:
1.表达式的取值: byte,short,int,char
2.case 后面跟的是要和表达式进行比较的值,如果匹配到对应的case值,那么就执行相应的语句体,语句体可以是一条语句或者多条语句。
3.break 表示中断,结束的意思,它的作用是结束switch语句
4.default 这个语句表示所有的情况都不匹配,就执行这里面的语句体内容,和if-else最后的那个else相似
5.只有当所有的case都不匹配的时候,才会去执行default语句体。
执行过程:
1、首先计算表达式的值
2、拿着计算好的值与case后面的值从上到下依次顺序比较,如果找到有匹配的值,就开始执行对应的语句体
3、当对应的语句体执行完毕后,会执行紧接着的break语句,执行break语句就代表着switch语句选择结构结束(跳出switch选择)
4、当从上到下依次寻找case对应值的时候,没有找到匹配的值,就会执行default中的语句体,然后跳出循环
public class SwitchDemo { public static void main(String[] args) { int x = 2 ; int y = 3 ; switch(x){ case 2 : y++; break; case 3 : y++; break; default: y++; } System.out.println(y); } }