java6:流程控制
Java 流程控制:
顺序
分支
循环
分支:
if(布尔表达式){
语句块
}else{
语句块
}
尽量使用肯定条件,减少else,减少嵌套
package day06;
import java.util.Scanner;
public class Demo01 {public static void main(String[] args) {Scanner con = new Scanner(System.in);System.out.print("输入一个整数:");int n = con.nextInt();con.close();if(n > 0){System.out.println("是正整数");}else{System.out.println("不是正整数");}}
}
package day06;
import java.util.Scanner;
public class Demo01 {public static void main(String[] args) {Scanner con = new Scanner(System.in);System.out.print("输入一个整数:");int n = con.nextInt();con.close();if(n > 0)//if语句块中只有一行代码的时候,可以省略花括号System.out.println("是正整数");elseSystem.out.println("不是正整数");}
}
package day06;
import java.util.Scanner;
public class Demon02 {public static void main(String[] args) {Scanner con = new Scanner(System.in); System.out.print("输入一个整数:");int n = con.nextInt();con.close();if(n > 0)System.out.println("正整数");else if(n == 0)System.out.println("是0");elseSystem.out.println("是负整数"); }
}
switch - case 结构
性能十分优秀
但是 只能 根据整数参数进行分支操作
if 多路 嵌套 条件灵活 适应性广,性能相对于 switch 差
如果 是根据整数多路分支 用switch
其他的可以使用 if
switch(command){
case 1:
//语句
break;
case 2:
//语句
break;
case 3:
// 3和4用同一个语句
case 4:
//语句
break;
}
package day06;
import java.util.Scanner;
public class Demo03 {public static void main(String[] args) {Scanner con = new Scanner(System.in);System.out.print("输入成绩:");int score = con.nextInt(); con.close();if(score >= 0){String level;switch(score/10){case 10: level = "学霸"; break;case 9:level = "学神";break;case 8:level = "学民";break;case 7:level = "学痞";break;case 6:level = "学渣";break;default:level = "渣渣"; }System.out.println("你好"+level);}elseSystem.out.println("渣渣有负的吗?"); }
}
循环结构
经典的for常用于计次循环
for 循环可以替代其他他的循环结构
for(表达式1;表达式2;表达式3){
循环体
}
for(初始化表达式;循环条件(boolean);递增表达式){
循环体
}
for(;;){} ==》死循环
在不知道用什么循环的时候就用死循环
for(;循环条件;)当循环
控制使用
continue
用在循环中,结束本次循环而开始下一次循环.
break
用于退出当前语句块,退出循环
在嵌套的循环结构中,break 用于退出所在循环体,如果要退出外层循环体,需要使用标号的方式
for(){
for(){
break;
}
}
outer:for(){
for(){
break outer;
}
}
package day06;
/**
* 99乘法表
*/
public class Demo04 {public static void main(String[] args) {for(int x = 1;x < 10;x++){if(x == 2)continue;for(int y = 1; y <= x;y++){if(y == 6) break;if(x*y >= 10)System.out.print(y+"*"+x+"="+x * y+' ');elseSystem.out.print(y+"*"+x+"="+"0"+x * y+' '); }System.out.println();}}
}
package day06;
/**
*用死循环,反转字数
*/public class Demo05 {public static void main(String[] args) {int num = 1234567890;int sum = 0;int last;for (;;) {last = num % 10;sum = sum * 10 + last;num /= 10;if (num == 0)break;}System.out.println(sum);}
}
package day06;import java.util.Scanner;public class Demo06 {public static void main(String[] args) {Scanner con = new Scanner(System.in);int score = -1;for (; score < 0 || score > 100;) {System.out.print("输入分数:");score = con.nextInt();}System.out.print(score);}
}
while 循环
先判断 后循环
while(循环条件(布尔)){
循环体
}
package day06;import java.util.Scanner;public class Demo07 {public static void main(String[] args) {Scanner con = new Scanner(System.in);System.out.print("请输入一个三位数:");int num = con.nextInt();int nu = num;int sum = 0;while (num != 0) {int last = num % 10;sum += last * last * last;num /= 10;}if (sum == nu)System.out.println(nu + "是水仙花数");elseSystem.out.println(nu + "不是水仙花数");}
}
package day06;import java.util.Scanner;public class Demo07 {public static void main(String[] args) {// Scanner con = new Scanner(System.in);// System.out.print("请输入一个三位数:");// int num = con.nextInt();for (int num = 100; num < 1000; num++) {int nu = num;int sum = 0;while (nu != 0) {int last = nu % 10;sum += last * last * last;nu /= 10;}if (sum == num)System.out.println(num + "是水仙花数");elseSystem.out.println(num + "不是水仙花数");}}
}
do while 循环
先循环在检查,无论boolean表达式的值是true 还是 false 最少会进行一次循环
do{
循环体
}while(循环条件)
对比一下: for ;while ;do while
for 常用于 经典使用方式 与固定次数有关循环处理
for 可以替代其他的两种循环
for(;循环条件;){} 替代 while(循环条件){}
死循环:for(;;){} 替代while(true){}
for{;;}{if(循环条件) break;} 替代 do while(循环条件)
while 循环用于在循环体开始时候判断循环条件
do while 循环用于在循环体结束时候判断循环条件
不知道用什么循环就要for 的死循环,在适当的条件时候使用break
转载于:https://blog.51cto.com/lmdtx/1698843
java6:流程控制相关推荐
- [JavaScript] JavaScript 运算符与流程控制
本文主要介绍switch,do-while,for-in,for-of的使用方法. 有关if-else,for,while等简单流程控制,和别的语言相似且常见,我没有自己写,本文将展示教程配套课件中的 ...
- Python学习笔记3 流程控制、迭代器、生成器
第3章 流程控制.迭代器.生成器 3.1 选择语句 1.语法:(1)if -else (2)if-elif-else 2.注意:(1)每个条件后面要使用冒号:(2)使用缩进划分语句块(3)python ...
- python如何控制程序的运行顺序_Python流程控制-1 顺序执行
流程控制指的是代码运行逻辑.分支走向.循环控制,是真正体现我们程序执行顺序的操作.流程控制一般分为顺序执行.条件判断和循环控制. 顺序执行 Python代码在执行过程中,遵循下面的基本原则: 普通语句 ...
- Python黑帽编程2.4 流程控制
Python黑帽编程2.4 流程控制 本节要介绍的是Python编程中和流程控制有关的关键字和相关内容. 2.4.1 if -..else 先上一段代码: #!/usr/bin/python # - ...
- Java程序流程控制(顺序结构、分支结构、循环结构、if-else、switch-case、for、while、do-while、break、continue、return)
流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块. 其流程控制方式采用结构化程序设计中规定的三种基本流程结构,即: 顺序结构 ...
- mysql 控制函数库_数据库开发——MySQL——函数与流程控制
一.函数 1.介绍 1.1.数学函数 ROUND(x,y) 返回参数x的四舍五入的有y位小数的值 RAND() 返回0到1内的随机值,可以通过提供一个参数(种子)使RAND()随机数生成器生成一个指定 ...
- python怎么控制while循环_Python流程控制之while循环怎么学呢?老男孩Python
学习Python流程控制if条件语句之后,利用if ... else来猜年龄,但是只能猜一次就中的机率太小了,如果想给玩家3或者几次机会怎么办呢?总不能把代码复制3次吧,以后要修改功能还得修改3次.那 ...
- JavaScript异步流程控制的前世今生
js的流程控制老大难问题就是异步回调. 一个流程过程,往往会出现回调地狱,这个回调异步控制就被提上研究得议程. 目前有实现的回调流程有以下几种 回调函数实现 事件监听 发布订阅 Promise/A+ ...
- 05JavaScript中的流程控制
技术交流QQ群:1027579432,欢迎你的加入! 1.流程控制 在一个程序执行的过程中,各条代码的执行顺序对程序的结果是有直接影响的.很多时候我们要通过控制代码的执行顺序来实现我们要完成的功能. ...
最新文章
- ThreadPoolExecutor 的八种拒绝策略 | 含番外!
- python爬虫流程-Python爬虫流程
- C语言头文件深入理解
- 08_MinNumberInRotateArrary
- python 3d大数据可视化_Python大数据可视化编程实践-绘制图表
- 赞!史上最强音视频下载神器youtube-dl回归,GitHub75k星
- java string对象放在什么区域_java中String对象的存储位置
- html5 js阻塞加载,js无阻塞加载和defer、async详解_白峰_前端开发者
- 串口IO、定时器、回调函数
- 基于文本数据的情感分析系统
- Windows上查找文件(夹),查找内容等:EverthingNotePad++ 使用小技巧
- JAVA第11章枚举与泛型总结
- 微信云linux sdk,微信云控开发SDK使用教程--手机端推送好友列表通知服务端
- OpenCV轮廓相关操作 C++
- 机器学习10大经典算法
- T32 simulator
- TOP100summit分享实录 | 网易卡爷:实战解读增长黑客在 B 端业务中的应用
- 在没有搜索功能的网站中寻找指定内容
- iOS开发中extension的用法(延展)
- vanishing point detection in autopilot
热门文章
- leetcode234 回文链表
- C++(STL):30 ---关联式容器map的operator[]和insert效率对比
- C++:31---对象引用和赋值
- 如何读取指针指向的地址空间呢?
- C语言 回调函数 produce(arr,len,getRand)
- codeforces 546A-C语言解题报告
- 伤钱伤感情 10件不能和亲戚一起干的事儿
- 高质高效软件开发组织能力模型
- ObjectArx创建指定块
- 在 Confluence 6 中禁用 workbox 应用通知