Java语言中的分支和循环语句

不止Java

共 5741字,需浏览 12分钟

 · 2021-03-31

分支和循环语句

    一、分支语句
    二、循环语句


一、分支语句

1. 流程控制

流程控制语句的分类
(1)循环结构
程序中最简单最基本的流程控制,按照代码的先后顺序,依次执行。
public class day_004 { public static void main(String[] args){ System.out.println("顺"); System.out.println("序"); System.out.println("结"); System.out.println("构"); }}


2. if语句

格式1:
if(关系表达式){
语句体;
}
执行流程:
①首先计算关系表达式的值;
②如果关系表达式的值为true,则执行语句体,反之为false则不执行;
③继续执行后面的语句。
public class day_004 { public static void main(String[] args) { int i = 20; int j = 10; //如果i > j成立,则将j的值赋给i if (i > j) { i = j; } System.out.println("i = " + i); }}

格式2:
if(关系表达式){
语句体1;
}else{
语句体2;
}
执行流程:
①首先计算关系表达式的值;
②如果关系表达式的值为true,则执行语句体1,反之为false则执行语句体2;
③继续执行后面的语句。

public class day_004 { public static void main(String[] args) { int i = 21; //判断i的奇偶性 if (i % 2 == 0) { System.out.println(i+"是偶数"); }else{ System.out.println(i+"是奇数"); } }}

格式3:
if(关系表达式1){
语句体1;
}else if(关系表达式2){
语句体2;
}
……
else{
语句体n+1;
}

执行流程:
①首先计算关系表达式1的值;
②如果关系表达式1的值为true,则执行语句体1,如果为false就计算关系表达式2的值,关系表达式2的值为真执行语句体2,反之执行关系表达式3,……;
③如果没有任何关系表达式的值为真,则执行语句体n+1。
import java.util.Scanner;
public class day_004 { public static void main(String[] args) { //int grade = 97; //从键盘输入分数 Scanner sc = new Scanner(System.in); System.out.println("请输入成绩(0-100):"); int grade = sc.nextInt();
//判断成绩在哪个等级,90-100为A,80-89为B,70-79为C,60-69为D,59及以下为E if (grade < 0 || grade > 100) { System.out.println("您输入的分数有误,请重新输入!"); } else if (grade >= 90 && grade <= 100) { System.out.println("成绩" + grade + "分,等级为A"); } else if (grade >= 80 && grade < 90) { System.out.println("成绩" + grade + "分,等级为B"); } else if (grade >= 70 && grade < 80) { System.out.println("成绩" + grade + "分,等级为C"); } else if (grade >= 60 && grade < 70) { System.out.println("成绩" + grade + "分,等级为D"); } else { System.out.println("成绩" + grade + "分,等级为E"); } }}

  3. switch语句
格式:
switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
……
default:
语句体n+1;
[break;]
}

执行流程:
①首先计算表达式的值;
②用表达式的值和case后面的值依次进行比较,如果有对应的值,就会执行相应的语句,在执行过程中,遇到break则结束switch循环;
③若所有的case值都和表达式的值不匹配,则执行default里面的语句体,然后结束程序。
import java.util.Scanner;
public class day_004 { public static void main(String[] args) { //从键盘输入月份,判断是什么季节 Scanner sc = new Scanner(System.in); System.out.println("请输入月份(0-12):"); int month = sc.nextInt(); switch (month) { case 12: case 1: case 2: System.out.println("冬天"); break; case 3: case 4: case 5: System.out.println("春天"); break; case 6: case 7: case 8: System.out.println("夏天"); break; case 9: case 10: case 11: System.out.println("秋天"); break; default: System.out.println("您输入的月份有误,请重新输入!"); } }}



二、循环语句
循环结构的特点:有开始和结束标志,重复同一件事。
循环结构的组成:
①初始化语句:表示循环开始的状态;可以是一条或多条内容,完成一系列初始化操作。
②条件判断语句:循环执行的条件;使用一个结果值为boolean类型的表达式,此表达式决定是否执行循环体,例如:i>3 。
③循环体语句:循环所执行的内容;任意语句。
④条件控制语句:表示循环执行中每次变化的内容;通常使用一条语句来改变变量的值,从而达到控制循环是否能继续向下执行的效果,如:i++。

1. for循环语句
格式:
for(初始化语句; 条件判断语句; 条件控制语句){
循环体语句;
}


执行流程:
①执行初始化语句;
②执行条件判断语句,结果为true,则执行循环体语句,反之结束循环;
③执行条件控制语句;
④回到②继续。
public class day_004 {    public static void main(String[] args) {        //计算1+2+3+…+98+99+100的值        int sum = 0;        for (int i = 0; i < 101; i++) {            sum += i;        }        System.out.println("从1加到100的值为:" + sum);    }}

2. while循环语句

格式:
初始化语句;
while(条件判断语句){
循环体语句;
条件控制语句;
}
执行流程:
①执行初始化语句;
②执行条件判断语句,结果为true,则执行循环体语句,反之结束循环;
③执行条件控制语句;
④回到②继续。
//用while实现public class day_004 { public static void main(String[] args) { //计算1+2+3+…+98+99+100的值 int sum=0; int i = 0; while (i <= 100) { sum += i; i++; } System.out.println("从1加到100的值为:" + sum); }}

3. do…while循环语句

格式:
初始化语句;
do{
循环体语句;
条件控制语句;
}while(条件判断语句);
执行流程:
①执行初始化语句;
②执行循环体语句
③执行条件控制语句;
④执行条件判断语句,结果为true,则执行继续,反之结束循环;
⑤回到②继续。
//用do…while实现public class day_004 { public static void main(String[] args) { //计算1+2+3+…+98+99+100的值 int sum=0; int i = 0; do { sum +=i; i++; } while (i <= 100); System.out.println("从1加到100的值为:" + sum); }}

三种循环的区别
(1)for循环和while循环先判断条件是否成立,再决定是否执行循环体;
(2)do…while循环先执行循环体,再判断条件是否成立,是否继续执行循环体。
(3)for和while的区别:
①for循环中,条件控制语句所控制的自增变量,在for循环结束后不再被访问;
②while循环中,条件控制语句所控制的自增变量,在while循环结束后,还可以继续使用。

死循环格式
for( ; ;){ }
while(true){ }
do{ } while(true);




4. 控制跳转语句
跳转控制语句
continue:用在循环中,基于条件控制,跳过某次循环体的执行,继续下一次循环;
break:用在循环中,基于条件控制,终止当前的整个循环。

5. 循环嵌套
循环语句中包含循环语句称为循环嵌套。
public class day_004 { public static void main(String[] args) { //打印输出九九乘法表 for (int i = 1; i < 10; i++) { for (int j = 1; j <= i; j++) { System.out.print(j + "*" + i + "=" + (i * j) + '\t'); } System.out.println(); } }}

6. Random

作业:产生一个随机数
使用步骤:
①导包
import java.util.Random;
②创建对象
Random r = new Random();
③获取随机数
int number =r.nextInt();
import java.util.Random;
public class day_004 { public static void main(String[] args) { //获取5个随机数 Random r = new Random(); //获取数据的范围,[0,5) for (int i = 0; i < 5; i++) { int number = r.nextInt(5); System.out.println(number); } }}






热爱生活,热爱学习



浏览 6
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报