流程控制语句
流程控制语句是用来控制程序中各语句执行顺序的语句(如果将软件当做房子的话,之前的变量、数据类型比做砖头的话,流成控制语句可以比做混凝土,将砖粘起来。流程控制语句是整个程序的核心)
1."顺序结构" 代表先执行a,再执行b的逻辑(即程序执行的逻辑,再次不做说明)
2."选择结构"代表 如果...,则...的逻辑 if语句
3."循环结构"代表如果...,则再继续...的逻辑
任何软件和程序,小到一个练习,大到一个操作系统,本质上都是由"变量、选择语句、循环语句"组成。
一:选择结构:if 结构、switch结构
1.简单的if语句小程序练习,顺便练习使用Math.random()函数

•小练习:通过三次扔骰子看看今天运气如何

2.if-else双选择结构

3.if else if else多选择结构

4.swith多选择结构,用于多值判断;if else多选择结构


•小练习:判断这一年是不是闰年,并且输入月份,判断这个月有多少天
import java.util.Scanner; public class TestScanner2 { public static void main(String[] args) { // TODO Auto-generated method stub int leap; //leap判断闰年的标志 Scanner scanner=new Scanner(System.in); System.out.println("请输入年份:"); int year=scanner.nextInt(); System.out.println("请输入月份:"); int month=scanner.nextInt(); if(month<1||month>12){ System.out.println("data error"); } else //在月份输入正确的情况下判断闰年并计算天数 { if(((year%4==0)&&(year%100 !=0))||(year%400==0)) { leap=1; System.out.println("该年为闰年\n"); } else { leap=0; System.out.print("该年不是闰年\n"); } switch(month){ case 4: case 6: case 9: case 11: //case语句的连读使用,在4,6,9,11月有30天 System.out.println("第"+month+"有30天");break; case 2: System.out.println("第"+month+"有28+leap天");break; default: System.out.println("第"+month+"有31天");break; } } } }

二:循环结构:while do...while for
while:先判断后执行 ♥推荐! do...while:先执行后判断,while后有分号,不能省略(不管条件是否符合,先执行一次)
for循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环结构
步骤:1.先执行初始化语句 2.判断条件 3.执行循环体 4.步进迭代 5.回到第二步继续判断
1.for循环语句与while循环语句的对比

•小练习:无限循环:编译器将while(true)和for(;;)看做一回事,都指的是无限循环

2.嵌套循环:在一个循环语句再嵌套一个或多个循环,称为嵌套循环
简单地打印出来

•小练习:打印九九乘法表,先打印简单的1*2=2,2*2=4,定义前面的变量为一个值,再固定后面的数2,打印后用分隔符分开


•小练习:打印100以内的奇数和,偶数和。通过if语句某数是否能整除2判断奇数,偶数。

• 小练习:输出1-1000以内能被5整除的数,且每行输出5个

3. 在任何循环的主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环剩余的语句。

4.continue语句用于在循环语句体中,终止某次的循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。

5.带标签的break和continue:需要用到goto关键字,goto关键字很早在c语言中出现,尽管goto仍然是java的一个保留字,但并未在java中得到正式的使用。
“标签”是指后面跟一个冒号的标识符。对java来说唯一用到标签的地方是在循环语句之前,设置在循环语句之前的理由是:我们希望在其中嵌套另一个循环,由于break和continue关键字只能中断其当前循环,但若随标签使用,他们就会中断到存在标签的地方。

浙公网安备 33010602011771号