Java学习笔记-流程控制
在Java中,最常见的就是顺序结构,另外,还有其他的一些的结构,选择,循环等,这些程序结构的加入,使得程序代码更有选择性
判断结构
if语句
- 三种格式:
if(条件表达式) {
    执行语句;
}
if(条件表达式) {
    执行语句;
} else {
    执行语句;
}
if(条件表达式) {
    执行语句;
} else if (条件表达式) {
    执行语句;
}
···
else {
    执行语句;
}
- if语句特点
 每一种格式都是单条语句
 第二种格式与三元运算符的区别:三元运算符运算完要有值出现。好处是:可以写在其他表达式中
 条件表达式无论写成什么样子,只看最终的结构是否是true或者false
选择结构
switch语句
- 格式:
switch(表达式) {
    case 取值1:
        执行语句;
        break;
    case 取值2:
        执行语句;
        break;
    default:
        执行语句;
        break;
}
- switch语句特点
 表达式的数据类型可以是byteshortintchar枚举类型和java.lang.String(从java7开始允许)
 case之间与default没有顺序。先执行第一个case,没有匹配的case执行default
 结束switch语句的两种情况:遇到break,执行到switch语句结束
 如果匹配的case或者default没有对应的break,那么程序会继续向下执行,运行可以执行的语句,直到遇到break或者switch结尾结束
循环结构
按照满足条件反复执行某段代码
循环结构一般会有如下四个部分:初始化语句,循环条件,循环体,迭代语句
- 代表语句: - while,- do while,- for
- while语句格式 
while(条件表达式) {
    执行语句;
}
- do while语句格式
do {
    执行语句;
}while(条件表达式);
do while特点是条件无论是否满足,循环体至少被执行一次
- for语句格式
for(初始化表达式;循环条件表达式;循环后的操作表达式) {
    执行语句;
}
- for里面的连个表达式运行的顺序,初始化表达式只读一次,判断循环条件,为真就执行循环体,然后再执行循环后的操作表达式,接着继续判断循环条件,重复找个过程,直到条件不满足为止
- while与for可以互换,区别在于for为了循环而定义的变量在for循环结束就是在内存中释放。而while循环使用的变量在循环结束后还可以继续使用
- 最简单无限循环格式:while(true), for(;;)无限循环存在的原因是并不知道循环多少次,而是根据某些条件,来控制循环
其他流程控制语句
break(跳出),continue(继续)
break:完全结束一个循环,跳出循环体	   可接标签
continue:忽略本次循环剩下的语句    可接标签
return:结束方法
注:
- 这两个语句离开应用范围,存在是没有意义的
- 这个两个语句单独存在下面都不可以有语句,因为执行不到
- continue语句是结束本次循环继续下次循环
- 标号的出现,可以让这两个语句作用于指定的范围
Java学习笔记-流程控制的更多相关文章
- JavaScript学习笔记——流程控制
		javascript流程控制流程:就是程序代码的执行顺序.流程控制:通过规定的语句让程序代码有条件的按照一定的方式执行. 一.顺序结构 按照书写顺序来执行,是程序中最基本的流程结构. 二.选择结构(分 ... 
- Go语言学习笔记-流程控制(二)
		Go语言流程控制 字典类型Map 1.上节遗留:map字典类型 变量声明:var myMap map[string] PersonInfo 其中,myMap是变量名,string是键的类型,Perso ... 
- go学习笔记-流程控制(if/else,for/range)
		流程控制(if/else,for/range) if if条件判断语句的语法概括起来就是:如果满足条件就做某事,否则做另一件事. func testIf() { num := 10 if num &l ... 
- python学习笔记---流程控制
		二.流程控制 2.1选择结构与语句 2.1.1 最简单的if语句 注意:if语句后边必须加上冒号 满足条件后.可以执行多条语句. #最简单的if语句 print("请输入一个既能整除2,又能 ... 
- Java 学习笔记 线程控制
		题目一 本质上来说,线程是不可控制的,线程的执行是由CPU资源分配决定的,我们无法干预系统CPU的资源分配,但我们可以增加条件来让线程按照我们的预想顺序来执行. 比如.如果当前的执行的线程不满足我们所 ... 
- JAVA学习笔记16——控制线程
		Java的线程支持提供了一些便捷的工具方法,通过这些便捷的工具方法可以很好地控制线程执行. join线程 Thread提供了让一个线程等待另一个线程完成的方法——join().当在某个线程执行流中 ... 
- C学习笔记-流程控制
		常用的流程图符号 起止框用于表示流程的开始或结束: 输入/输出框用平行四边形表示,在平行四边形内可以写明输入或输出的内容: 判断框用菱形表示,它的作用是对条件进行判断,根据条件是否成立来决定如何执行后 ... 
- Java学习笔记之---流程控制语句
		Java学习笔记之---流程控制语句 (一)循环语句 (1)if语句 if(布尔表达式){ //如果布尔表达式为true将执行的语句 } if(i%2!=0){ System.out.println( ... 
- 《Java学习笔记(第8版)》学习指导
		<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ... 
随机推荐
- express框架初步
			express框架初步使用 var exp = require('express'); var ejs = require('ejs'); var app = new exp(); app.set(& ... 
- sqlserver2017安装Linux版教程
			安装 SQL Server 下载 Microsoft SQL Server 2017 Red Hat 存储库配置文件: sudo curl -o /etc/yum.repos.d/mssql-serv ... 
- 使用Eclipse进行远程调试(转)
			做开发好多年了,Debug大家肯定都不陌生,绝对称得上是家常便饭了.博主虽不敢妄下断言,但是这里也猜一下,肯定有很多人都没有使用过Remote Debug(远程调试).说来惭愧,博主也是工作了3年才用 ... 
- P4317 花神的数论题 动态规划?数位DP
			思路:数位$DP$ 提交:5次(其实之前A过,但是调了调当初的程序.本次是2次AC的) 题解: 我们分别求出$sum(x)=i$,对于一个$i$,有几个$x$,然后我们就可以快速幂解决. 至于求个数用 ... 
- leetcode解题报告(7):Valid Parentheses
			描述 Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the i ... 
- Codevs 1743 反转卡片(splay)
			1743 反转卡片 时间限制: 2 s 空间限制: 256000 KB 题目等级 : 大师 Master 题目描述 Description [dzy493941464|yywyzdzr原创] 小A将N ... 
- python3.5+win7 安装 numpy 和scipy的总结
			1.安装numpy. 官网下载numpy.下载地址为https://pypi.Python.org/pypi/numpy.选择与Python版本相对应的numpy版本.之后在python35 ... 
- mac 安装软件 显示信任任何来源
			“通用”里有时没有“任何来源”这个选项: 显示"任何来源"选项在控制台中执行: sudo spctl --master-disable 不显示"任何来源"选项( ... 
- cesium billboard跨域问题1
			群里小伙伴问道使用billboard加载图片时出现跨域问题,一般认为在服务器端设置 Access-Control-Allow-Origin: * 例如用tomcat发布图片服务,可以这样设置:http ... 
- CF1214D
			CF1214D 题意: 给你一个 $ n \times m $ 的矩阵,求最少用多少个障碍,将 $ (1,1) $ 到 $ (n,m) $ 的路径堵死. 题意: 因为可以将起点两边堵死,所以答案最多是 ... 
