一、程序流程控制介绍:

在程序中,程序运行的流程控制决定程序是如何执行的,主要有 三大流程控制语句:

  • 顺序控制

  • 分支控制

  • 循环控制

1、顺序控制:程序从上到下逐行地执行,中间没有任何判断和跳转

注:java中定义变量时采用合法的向前引用(先定义后使用)

2、分支控制if-else:让程序有选择的执行,分支控制有三种

  • 单分支

  • 双分支

  • 多分支

单分支基本语法:

if(条件表达式){
​执行代码块;(可以有多条语句)
​
}

注:当条件表达式为true时,就会执行{}的代码,如果为false,就不执行

特别说明:如果{}中只有一条语句,{}可以省略,建议写上{},看起来清晰明了

3、双分支基本语法:

if(条件表达式){
​执行代码块1;
​
}else{
​执行代码块2;
​
}

注:当条件表达式成立,即执行代码块1,否则执行代码块2,如果执行代码块,只有一条语句,则{}可以省略,否则,不能省略

4、多分支基本语法:

if(条件表达式1){
​执行代码块1;
​
}else if(条件表达式2){
​执行代码块2;
​
}else if(条件表达式3){
​执行代码块3;
​
}
​
……
​
else {
​执行代码块n;
​
}

注:

  1. 当条件表达式1成立时,即执行代码块1

  2. 如果表达式1不成立,才去判断表达式2是否成立

  3. 如果表达式2成立,就执行代码块2

  4. 以此类推,如果所有的表达式都不成立

  5. 则执行else的代码块,注意,只能有一个执行入口

  6. 多分支可以没有else,如果所有的条件表达式都不成立,则一个执行入口都没有

  7. 如果有else,所有的条件表达式都不成立,则默认执行else代码块

5、嵌套分支:

在一个分支结构中又完整的嵌套了另一个完整的分支结构,里面的分支结构称为内层分支外面的分支结构称为外层分支

switch分支结构基本语法:

switch(表达式){
​case 常量1;   //当
​语句块1;
​break;     //代表结束switch语句,跳出循环
​……
​case  常量n;
​语句块n;
​break;
​default;
​default语句块;
​break;
​}
  1. switch关键字,表示switch分支

  2. 表达式对应一个值

  3. case 常量1:当表达式的值等于常量1,就执行语句块1

  4. break:表示退出switch

  5. 如 果和case常量1匹配,就执行语句块1,如果没有匹配,就继续匹配case常量2

  6. 如果一个都没有匹配上,执行default

6、switch注意事项和细节讨论

  • 表达式数据类型,应和case后的常量类型一致,或者是可以自动转成可以相互比较的类型,比如输入的是字符,而常量是int

  • switch(表达式)中表达式的返回值必须是:(byte,short,int,char,enum枚举,String)

  • case子句中的值必须是常量,而不能是变量

  • default子句是可选的,当没有匹配的case时,执行default

  • break语句用来执行完一个case分支后使程序跳出switch语句块;如果没有写break,程序会顺序执行到switch结尾,直到执行到break

7、switch和if的比较:

如果判断的具体数值不多,而且符合byte、short、int、char、enum、String这六种类型,虽然两个语句都可以使用,建议使用switch语句

其他情况,对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广

8、for循环基本语法:

for(循环变量初始化;循环条件;循环变量迭代){
​
循环操作(语句);
​
}

说明:

  1. for关键字,表示循环控制

  2. for有四要素:(1)循环变量初始化(2)循环条件(3)循环操作(4)循环变量迭代

  3. 循环操作,这里可以有多条语句,也就是要循环执行的代码

  4. 如果循环操作(语句)只有一条语句,可以省略{},建议不省略

注意事项和细节说明:

循环条件是返回一个布尔值的表达式

for(;循环判断条件;)中的初始化和变量迭代可以写到其它地方,但是两边的分号不能省略

循环初始值可以有多条初始化语句,但要求类型一样,并且中间用逗号隔开,循环变量迭代也可以有多条变量迭代语句,中间用逗号隔开

for(;;)表示一个无限循环,死循环

9、while循环控制基本语法:

循环变量初始化;

while(循环条件){
​循环体(语句);
​循环变量迭代;
​
}

说明:while循环也有四要素;只是四要素放的位置,不一样

注意事项和说明:

  1. 循环条件是返回一个布尔值的表达式

  2. while循环是先判断再执行语句

10、do..while循环控制基本语法:

循环变量初始化;

do{
​循环体(语句);
​循环变量迭代;
​
}while(循环条件);

说明:

  • do while是关键字

  • 也有循环四要素,只是位置不一样

  • 先执行,再判断,也就是说,一定会执行一次

  • 最后有一个分号;

注意事项和细节说明:

循环条件是返回一个布尔值的表达式

11、do while循环是先执行,再判断,因此它至少执行一次

多重循环控制介绍:

将一个循环放在另一个循环体内,就形成了嵌套循环,其中,for,while,do..while均可以作为外层循环和内层循环(建议一般使用两层,最多不要超过3层,否则,代码的可读性很差)

实质上,嵌套循环就是把内层循环当成外层循环的循环体,只有当内层循环的循环条件为false时,才会完全跳出内层循环,才可结束外层的当次循环,开始下一次的循环

设外层循环次数为m次,内层为n次,则内层循环体实际上需要执行m*n次

12、break语句基本介绍:

break语句用于终止某个语句块的执行,一般使用在switch或者循环(for,while,do while)中

基本语法:

{……
​
•    break;
​
•    ……
​
}

跳转控制语句-break注意事项和细节说明:

break语句出现在多层嵌套的语句块中时,可以通过标签指明要终止的是哪一层语句块

标签的基本使用:

 label1:{……
​
•      label2:      {……
​
•      label3:              {       ……
​
•                                            break label2;
​
•                                    ……
​
•                             }
​
•                      }
​
•           }

注:

  • break语句可以指定退出哪层

  • label1是标签,由程序员指定

  • break后指定到哪个label就退出到哪里

  • 在实际的开发中,尽量不要使用标签

  • 如果没有指定break,默认退出最近的循环体

14、跳转控制语句-continue基本介绍:

continue语句用于结束本次循环,继续执行下一次循环

continue语句出现在多层嵌套的循环语句体中,可以通过标签指明要跳过的是哪一层循环,这个和前面的标签的使用的规则一样

基本语法:

{ ……

continue;

……

}

跳转控制语句-return介绍:

return 使用在方法,表示跳出所在的方法,如果return写在main方法,退出程序

java基础学习(四)相关推荐

  1. 【Java基础学习笔记】- Day11 - 第四章 引用类型用法总结

    Java基础学习笔记 - Day11 - 第四章 引用类型用法总结 Java基础学习笔记 - Day11 - 第四章 引用类型用法总结 4.1 class作为成员变量 4.2 interface作为成 ...

  2. Java基础学习——第十四章 网络编程

    Java基础学习--第十四章 网络编程 一.网络编程概述 计算机网络: 把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规模大.功能强的网络系统,从而使众多的计算机可以方便地互相传递信 ...

  3. 【读书笔记】Java基础学习之目录

    前述 :本人目前正在学习java,开发Android应用,因此重新来把java学习一遍. 本文所有资料来源于互联网,我将根据自己的学习进度,不断的将资料整合,就当作是读书笔记吧! 本文作为目录页,将不 ...

  4. 尚学堂JAVA基础学习笔记_2/2

    尚学堂JAVA基础学习笔记_2/2 文章目录 尚学堂JAVA基础学习笔记_2/2 写在前面 第10章 IO技术 1. IO入门 2. IO的API 3. 装饰流 4. IO实战 5. CommonsI ...

  5. java基础小记_[Java教程]Java基础学习小记

    [Java教程]Java基础学习小记 0 2016-10-07 18:00:07 题外话:总结了多年的学习心得,不得不说,睡眠是一个学习者的必需品!所谓"早起毁一天"不是没有道理哪 ...

  6. Java基础学习—— IO流

    Java基础学习-- IO流 1 文件 1.1 文件的创建 1.2 文件常用的方法 2 IO流 2.1 FileInputStream 2.2 FileOutputStream 2.3 文件的拷贝 2 ...

  7. Java基础学习Day09--字符串

    Java基础学习Day09--字符串 一.简介: 二.String类字符串 三.String字符串的存储原理 四.字符串常用方法 1.equals()方法 2.字符串的搜索 3.截取子字符串 4.去除 ...

  8. Java 基础学习-Java语言概述

    Java 基础学习 第一章 Java语言概述 回顾java基础知识,进行整理记录. 文章目录 Java 基础学习 前言 一. Java语言发展史(了解) 二.Java语言跨平台原理(理解) 三.JRE ...

  9. java基础学习 --- 第二节 变量、数据类型和运算符

    java基础学习 - 第二节 变量.数据类型和运算符 一.变量 1.变量就是会发生改变的数据,程序运行时,这些数据以变量的形式被保存到计算机的内存中.如图 2.使用变量的步骤:     声明变量 - ...

  10. Java基础学习(12)

    Java基础学习 一.不可变集合 二.Stream流 2.1 Stream流数据添加 2.2 Stream流的中间方法 2.3 Stream终结方法 三. 方法引用 3.1 方法引用的基本概念 3.2 ...

最新文章

  1. oracle的系统和对象权限 与 Oracle 查看用户权限
  2. 云炬60s看世界20211126
  3. 微型计算机显示器引线,微型计算机的显示器通常有两组引线,即分别是( )...
  4. Zookeeper基于Java访问-权限
  5. 《Python Cookbook 3rd》笔记(3.16):结合时区的日期操作
  6. 编解码标准H264 与 AVS 变换矩阵比较
  7. 并发编程中的重重量级模型和轻量级模型
  8. update语句更新多条记录, 标记下
  9. 十进制转5421BCD(测试文件及modelsim.do文件的模板)——补充篇
  10. 什么?都2021年了还不会ajax嘛,来这里让您快速学会Ajax
  11. TortoiseSVN使用教程
  12. 高等代数_第2章:证明_Laplace定理
  13. shell脚本——系统工具箱(SystemToolbox)
  14. pcie总线连接两台电脑_PCIe总线学习笔记(一、PCI基础知识简介)(转载)
  15. 愿大家永远用不到的手机自带功能!记得要开启,能救命但别乱用
  16. 一款高仿腾讯漫画的漫画阅读类 APP
  17. MATLAB 2020a中文版安装步骤(简洁版)
  18. html 移动端缩小显示图片,Vue移动端可放大缩小图片vue-photo-preview
  19. jacob解决freemaker下载的word文档手机无法打开问题
  20. 2021年中国国有企业经营现状分析:营业收入及利润总额均增加[图]

热门文章

  1. 被资本和冬奥吹热的服务机器人,不止是昙花一现
  2. Vue中的虚拟DOM
  3. Studyacount少壮不努力 老大徒伤悲
  4. bat(batch)
  5. 数据分析 时间序列分析 MA模型
  6. 著名演播艺术家艾宝良入驻讯飞阅读,人工智能助力声音传承
  7. 在VIVIDO中快速计算并输入N多个多字节数值(2J)
  8. 分布式锁-zoomkeeper锁【享学课堂】
  9. 浅谈百度阅读/文库NA端排版技术
  10. Entity Structure Within and Throughout: Modeling Mention Dependencies forDocument-Level RE笔记