【笨鸟先飞】Java重新学习日记2---控制流程
来源:互联网 发布:java struct框架 编辑:程序博客网 时间:2024/05/22 09:01
控制流程主要有2大类,判断和循环。
其中判断是最为重要的核心,是所有编程语言都必须的东西,也是所有逻辑的实现。
if判断语句
If判断语句是单一判断,看if(判断){内容}里面的判断是否是正确,如果判断正确,则运行内容,如果不正确,则不运行内容。
具体一点if主要有3种使用fangs
If(判断){内容} 仅看判断结果,且控制内容运行与否
If(判断){内判断容1}
else {内容2}
看判断结果,如果判断结果正确运行内容1,如果错误,则运行内容2
If(判断1){内容1}
else If(判断2){内容2}
else
看判断1结果,正确则运行内容1,不然则看判断2,以此类推。
其核心都是看判断结果,然后决定是否运行该内容。
机器是识别用户的操作的,判断的实质就是,判断当前的情况,即用户的预期,然后根据预期做应该做的事情。所以,内容和判断是紧密挂钩,二位一体。在实际写代码的时候,判断的参数和内容是同时被构思出来的。
Switch case,是一种多参数的判断,与if....else if...else if使用相同,但是代码更为简洁和易读,所以另一方面,当出现多个else if的时候,就应该换用switch了
Switch(参数){
Case:参数1:{
内容
break
}
Case:参数2:{
内容
break
}
Case:参数3:{
内容
break
}
Default{
}
}
这里就是判断传入的参数,对应的是参数1,参数2或参数3,根据不同的传入参数,选择不同的内容来实现,呈现多种参数的同时判断,其实质,也就是if...else if...else if...
循环是将某个行为反复做,目的是使某种重复的事情,快速迭代完成。比如,1+2+。。+100。那么这个加法共要加100次,而其本质是重复的工作,我们不愿意手动去写那么多次加号,那么就应当借助循环完成。虽然在代码上简洁了,但实际上,他依然运行了那么多次,对于CPU而言,并没有区别。
最基本的循环是
While(判断){
内容
}
当判断是正确的时候,就运行内容,内容运行完,再次判断。 那么,注意的是,用于判断的参数必须在内容中有所改变,且判断的参数一定要有错误的时候,这样才能终止循环。
它的变形是Do {
内容
} while{判断}
这里的区别是,第一次内容先运行还是,先判断。这两种情况,有以上完成。使用while循环,一般是对于循环次数并不能确定的情况下,也就是,我们不能简单预估运算结果的时候,比如,1+2+。。+一直加到,结果大于10万的时候,就不加了,那么这种情况,我们无法预估,就使用while模式。
另外一种循环,则是for循环, for循环最常用的用法是for(int i;i<n;i++){内容}
N是我们自己设定的这种情况往往是针对我们知道要循环多少次,而因为操作重复,而使用的循环。其中最常见的就是遍历循环,而这种情况,一般要求,i不能在for的内容中赋值,以避免一直无法走出来。
使用循环需要注意防止死循环的产生,在实际运用中,明白为什么使用循环,考虑极限情况,是防止死循环的最佳方法。
遍历还有一种是for(object A : AS){
涉及A的内容。
}
AS是集合或者数组,A表示AS中的每个元素。对于AS整个数组或者集合进行批量处理,用这种方法,可以不了解AS的个数情况下,完成批量处理。
循环的常见目的就是快速处理相对重复的内容。
循环中的两个特殊方法,continue和break
Continue是中断这一次循环中的操作,但是循环依然继续,
而break这是彻底跳出本次循环。
循环是批量操作,是对一大堆数据进行操作,这些数据,一般情况,可以按某种条件分类,不同的分类会进行不同的操作,continue的用法一般是,发现某些数据不符合,或者符合某个条件的时候,就不进行处理了,就直接continue。这种用法与方法中,在方法一开始,进行某个判断,如果判断生效则直接return是一样的。
Break在循环中使用非常少,主要还是用在swtich中。
嵌套循环,是一个循环中有另一个循环,嵌套循环往往都是for循环嵌套。而嵌套的目的常见用作记录循环次数,或者需要使用的ij参数,有两个或者多个,这种情况下,往往就需要嵌套。
For循环嵌套,使用时,逻辑有这个需要,自然就会使用嵌套。
- 【笨鸟先飞】Java重新学习日记2---控制流程
- 【笨鸟先飞】Java重新学习日记6---类的使用(2)
- 【笨鸟先飞】Java重新学习日记12--创建一个类2
- 【笨鸟先飞】Java重新学习日记3---数组
- 【笨鸟先飞】Java重新学习日记10---多线程
- 【笨鸟先飞】android重新学习日记2---组件
- 【笨鸟先飞】Java重新学习日记1---符号与数据
- 【笨鸟先飞】Java重新学习日记4---类和对象
- 【笨鸟先飞】Java重新学习日记5---类的使用
- 【笨鸟先飞】Java重新学习日记7---高级数组之集合
- 【笨鸟先飞】Java重新学习日记9---异常处理
- 【笨鸟先飞】Java重新学习日记11---创建一个类
- 【笨鸟先飞】Java重新学习日记13--创建一个内部类
- 【笨鸟先飞】android重新学习日记1---布局
- 【笨鸟先飞】android重新学习日记5---intent
- 【笨鸟先飞】Java重新学习日记8---泛型的深入学习
- 【笨鸟先飞】android重新学习日记3---识别用户行为
- 【笨鸟先飞】android重新学习日记4---程序的生命周期
- 邓宁-克鲁格效应
- Appium 常见问题总结
- ajax实现文件上传进度条
- HC-05蓝牙模块与电脑通信
- 01. JDBC 简介
- 【笨鸟先飞】Java重新学习日记2---控制流程
- [leetcode]147. Insertion Sort List
- Sublime 安装SVN插件及使用方法
- Eclipse无法启动报An internal error occurred during: "reload maven project". java.lang.NullPointerExceptio
- Java结合postgreSql的增删改查遇到问题
- MYSQL中取当前周/月/季/年的第一天与最后一天
- mysql中的字段 TEXT类型区别、用于存储比较大文本字段
- 计数排序
- URDF文件相关