4.1 顺序结构

程序从上到下逐行地执行,中间没有任何判断和跳转。

4.2 分支结构

根据条件,选择性地执行某段代码。
有 if…else 和 switch…case两种分支语句。

if-else语句

例如:
实现:
/*
score>=90 等级为:A
70<=score<90 等级为:B
60<=score<70 等级为C
score<60 等级为:D
/*

import java.util.Scanner;
public class TestScore {public static void main(String[] args) {Scanner s = new Scanner(System.in);System.out.println("请输入学生成绩:");int score = s.nextInt();char level;if (score >= 90) {level = 'A';System.out.println("等级为:"+level);}if (score >= 70 && score < 90) {level = 'B';System.out.println("等级为:"+level);}if (score >= 60 && score < 70) {level = 'C';System.out.println("等级为:"+level);}if (score < 60) {level = 'D';System.out.println("等级为:"+level);}}
}
import java.util.Scanner;
public class TestScore {public static void main(String[] args) {Scanner s = new Scanner(System.in);System.out.println("请输入学生成绩:");int score = s.nextInt();char level;if (score > 90) {level = 'A';} else if (score >= 70) {level = 'B';} else if (score >= 60) {level = 'C';} else {level = 'D';}System.out.println("等级为:" + level);}
}

switch-case语句

  1. 没有写 break; 语句,则在找到对应case语句后,还会继续向下执行。
  2. 其中变量可以是哪些类型? 可以是char,byte,short,int,枚举,String(jdk1.7),double、float等不可以。
  3. case 条件:其中条件只能是值,不能是取值范围。

4.3 循环结构

根据循环条件,重复性的执行某段代码。
有while、do…while、for三种循环语句。
注:JDK1.5提供了 foreach 循环,方便的遍历集合、数组元素。

①初始化条件 ②循环条件 ③迭代条件 ④循环体
for循环

  1. 格式:
    for(①;②;③){
    //④
    }
  2. 执行过程:①-②-④-③-②-④-③-….-④-③-②

while循环

格式:

while(②){


}

do-while循环

格式:
do{


}while(②)

另:
无限循环:
for( ; ; ){}
或者
while(true){
}
说明:一般情况下,在无限循环内部要有程序终止的语句,使用break实现,若没有,那就是死循环。

1)嵌套循环例子,实现如下图:

public class TestFor {public static void main(String[] args) {//上半部分for(int i = 0;i < 5; i++){for(int k = 0; k < 4-i; k++){System.out.print(" ");}for(int j = 0;j < i+1; j++){System.out.print("* ");}System.out.println();}//下半部分for(int i = 0; i < 4; i++){for(int k =0;k < i+1; k++){System.out.print(" ");}for(int j = 0; j < 4-i; j++){System.out.print("* ");}System.out.println();}}
}

2)实现九九乘法表

public class TestJiuJiu {public static void main(String[] args) {for(int i = 1;i <= 9; i++){//一共有九行for(int j = 1;j <= i; j++){//每行有 i 个等式System.out.print(i + "*" + j + "=" + i*j + "\t");}System.out.println();}}
}

break和continue关键字

break:使用在switch-case中或者循环中
如果使用在循环中,表示:结束“当前”循环

continue:使用在循环结构中,表示:结束“当次”循环

关于break和continue中标签的使用。

public class TestBreakContinue {public static void main(String[] args) {//break和continue中标签的使用label:for (int i = 1; i < 5; i++) {for (int j = 1; j < 10; j++) {if(j % 4 == 0){//break;//continue;continue label;}System.out.print(j);}System.out.println();}}
}

第二章:Java_基本语法_4 程序流程控制相关推荐

  1. Java笔记2.3——Java基本语法之程序流程控制

    Java基础 Java基本语法(下):程序流程控制 目录 目录 Java基础 Java基本语法(下):程序流程控制 一.程序流程控制 1.理论 2.分支语句1: if-else结构 2.1.if-el ...

  2. 一文带你深入理解【Java基础】· Java基本语法:程序流程控制

    写在前面 Hello大家好, 我是[麟-小白],一位软件工程专业的学生,喜好计算机知识.希望大家能够一起学习进步呀!本人是一名在读大学生,专业水平有限,如发现错误或不足之处,请多多指正!谢谢大家!!! ...

  3. 【Java基础】· Java基本语法:程序流程控制习题总结

    写在前面 Hello大家好, 我是[麟-小白],一位软件工程专业的学生,喜好计算机知识.希望大家能够一起学习进步呀!本人是一名在读大学生,专业水平有限,如发现错误或不足之处,请多多指正!谢谢大家!!! ...

  4. Java基础——2、基本语法(下)—程序流程控制

    接上一章 类型转换.进制.运算符 目录 5.if-else语法 5.1 练习题 6.Scanner键盘获取数据 6.获取随机数--Math.random() 7.switch-case语法 8.for ...

  5. 学习 尚硅谷_宋红康_第2章_Java基本语法(下):程序流程控制超详细课件

    文章目录 程序流程控制 练习题 笔试题 彩票 结婚判断 switch-case结构的基本使用 练习题 程序流程控制 流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组 合成能完成一定功能的 ...

  6. 第2章_Java基本语法(下):程序流程控制

    文章目录 程序流程控制 练习题 笔试题 程序流程控制 流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组 合成能完成一定功能的小逻辑模块. • 其流程控制方式采用结构化程序设计中规定的三种 ...

  7. 使用java实现面向对象编程第二章_java面向对象编程——第二章 java基础语法

    第二章 java基础语法 1.java关键字 abstract boolean break byte case catch char class const continue default do d ...

  8. JavaSE入门0基础笔记 第二章Java基础语法

    JavaSE入门0基础笔记 第二章Java基础语法 1.运算符 1.1算术运算符 1.1.1运算符和表达式 1.1.2 算术运算符 1.1.3字符的"+"操作 1.1.4 字符串中 ...

  9. 尚硅谷Java入门视频教程第二章——Java基本语法

    尚硅谷Java入门视频教程第二章 第一章复习 课后习题 Java语言概述 第2章:Java基本语法 2.1 关键字和保留字 2.2 标识符(Identifier) 2.3 变量 2.3.1 变量基本概 ...

最新文章

  1. Flutter开发之ListView下拉刷新上拉加载更多(35)
  2. 给 EF Core 查询增加 With NoLock
  3. Netsparker超轻量级Web安全漏洞扫描工具使用教程介绍
  4. 我发现有的人就活该他赚钱,他们的脑子就是个聚宝盆
  5. C++ IO库:cmd读写,字符串读写,文件读写,<<重载,标准输出
  6. AES算法,DES算法,RSA算法JAVA实现
  7. 【Docker】07 Docker网络
  8. linux下各种后缀名文件的压缩和解压缩
  9. 通俗易懂讲解什么是Java分布式
  10. 初中英语多词性单词怎么办_初中英语词性的分类及用法
  11. 基于springboot实验室管理系统
  12. 蓝墨云功能扩展之试卷导出WORD文档
  13. 莫纳什大学计算机硕士专业怎么样,澳大利亚留学:莫纳什大学计算机硕士的14个专业...
  14. 王者荣耀android看不见iOS,王者荣耀转区功能来了!iOS和安卓这个限制,终于消失了...
  15. Mac M1芯片同态加密库的安装(TFHE问题)
  16. LVGL V0.01版本移植到STM32F4
  17. BERT-MRC:统一化MRC框架提升NER任务效果
  18. 很齐全的怀孕须知.不认真看不配做妈妈.
  19. 2022年陕西省中级工程师职称评审流程及申报条件
  20. Web3.0 兴起,元宇宙或接管互联网?

热门文章

  1. http请求中的Content-Type,详解
  2. .NET Core系列 : 2 、project.json 这葫芦里卖的什么药
  3. yum 安装报Header V3 DSA signature: NOKEY 的错
  4. 今天开始写技术博客啦
  5. 如何使 FlashGet 正常合法 下载 Session 中的自定义文件链接呢? JSP/Servlet 实现!
  6. mysql+nginx实现负载均衡
  7. spark.yarn.archive 的正确设置方法
  8. the computational graph needed to compute the outputs报错解决
  9. scala中的case中的变量为啥没有定义
  10. redis删除指定key中的指定元素