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:流程控制相关推荐

  1. [JavaScript] JavaScript 运算符与流程控制

    本文主要介绍switch,do-while,for-in,for-of的使用方法. 有关if-else,for,while等简单流程控制,和别的语言相似且常见,我没有自己写,本文将展示教程配套课件中的 ...

  2. Python学习笔记3 流程控制、迭代器、生成器

    第3章 流程控制.迭代器.生成器 3.1 选择语句 1.语法:(1)if -else (2)if-elif-else 2.注意:(1)每个条件后面要使用冒号:(2)使用缩进划分语句块(3)python ...

  3. python如何控制程序的运行顺序_Python流程控制-1 顺序执行

    流程控制指的是代码运行逻辑.分支走向.循环控制,是真正体现我们程序执行顺序的操作.流程控制一般分为顺序执行.条件判断和循环控制. 顺序执行 Python代码在执行过程中,遵循下面的基本原则: 普通语句 ...

  4. Python黑帽编程2.4 流程控制

    Python黑帽编程2.4  流程控制 本节要介绍的是Python编程中和流程控制有关的关键字和相关内容. 2.4.1 if -..else 先上一段代码: #!/usr/bin/python # - ...

  5. Java程序流程控制(顺序结构、分支结构、循环结构、if-else、switch-case、for、while、do-while、break、continue、return)

    流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块. 其流程控制方式采用结构化程序设计中规定的三种基本流程结构,即:         顺序结构         ...

  6. mysql 控制函数库_数据库开发——MySQL——函数与流程控制

    一.函数 1.介绍 1.1.数学函数 ROUND(x,y) 返回参数x的四舍五入的有y位小数的值 RAND() 返回0到1内的随机值,可以通过提供一个参数(种子)使RAND()随机数生成器生成一个指定 ...

  7. python怎么控制while循环_Python流程控制之while循环怎么学呢?老男孩Python

    学习Python流程控制if条件语句之后,利用if ... else来猜年龄,但是只能猜一次就中的机率太小了,如果想给玩家3或者几次机会怎么办呢?总不能把代码复制3次吧,以后要修改功能还得修改3次.那 ...

  8. JavaScript异步流程控制的前世今生

    js的流程控制老大难问题就是异步回调. 一个流程过程,往往会出现回调地狱,这个回调异步控制就被提上研究得议程. 目前有实现的回调流程有以下几种 回调函数实现 事件监听 发布订阅 Promise/A+ ...

  9. 05JavaScript中的流程控制

    技术交流QQ群:1027579432,欢迎你的加入! 1.流程控制 在一个程序执行的过程中,各条代码的执行顺序对程序的结果是有直接影响的.很多时候我们要通过控制代码的执行顺序来实现我们要完成的功能. ...

最新文章

  1. ThreadPoolExecutor 的八种拒绝策略 | 含番外!
  2. python爬虫流程-Python爬虫流程
  3. C语言头文件深入理解
  4. 08_MinNumberInRotateArrary
  5. python 3d大数据可视化_Python大数据可视化编程实践-绘制图表
  6. 赞!史上最强音视频下载神器youtube-dl回归,GitHub75k星
  7. java string对象放在什么区域_java中String对象的存储位置
  8. html5 js阻塞加载,js无阻塞加载和defer、async详解_白峰_前端开发者
  9. 串口IO、定时器、回调函数
  10. 基于文本数据的情感分析系统
  11. Windows上查找文件(夹),查找内容等:EverthingNotePad++ 使用小技巧
  12. JAVA第11章枚举与泛型总结
  13. 微信云linux sdk,微信云控开发SDK使用教程--手机端推送好友列表通知服务端
  14. OpenCV轮廓相关操作 C++
  15. 机器学习10大经典算法
  16. T32 simulator
  17. TOP100summit分享实录 | 网易卡爷:实战解读增长黑客在 B 端业务中的应用
  18. 在没有搜索功能的网站中寻找指定内容
  19. iOS开发中extension的用法(延展)
  20. vanishing point detection in autopilot

热门文章

  1. leetcode234 回文链表
  2. C++(STL):30 ---关联式容器map的operator[]和insert效率对比
  3. C++:31---对象引用和赋值
  4. 如何读取指针指向的地址空间呢?
  5. C语言 回调函数 produce(arr,len,getRand)
  6. codeforces 546A-C语言解题报告
  7. 伤钱伤感情 10件不能和亲戚一起干的事儿
  8. 高质高效软件开发组织能力模型
  9. ObjectArx创建指定块
  10. 在 Confluence 6 中禁用 workbox 应用通知