流程控制
复合语句:与c语言及其他语言相同,java语言的复合语句是以整个块区为单位的语句,所以又称块语句。复合语句由开括号“{”开始,闭括号“}”结束
条件语句:条件语句可根据不同的条件执行不同的语句。条件语句包括if条件语句与switch多分支语句。
文字总结:
if条件语句:是一个重要的编程语句,用于告诉程序在某个条件成立的情况下执行某段语句,而在另一种情况下执行另外的语句。
使用if条件语句,可选择是否要执行紧跟在条件之后的那个语句。关键字if之后是作为条件的“布尔表达式”。如果该表达式的返回结果为true,则执行其后的语句:如果为false,则不执行if条件之后的语句。If条件语句可分为简单的if语句、if……else语句和if……else if多分支语句。
语法如下:
if(布尔表达式){
语句序列}
例题代码:
int phoneNumber=123456789;
if(phoneNumber!=84072266;){
System.out.println("对不起,您拨打的电话不存在!");
运行结果:
流程图:
文字总结:
Switch语句:switch语句中表达式必须是整型、字符型、字符串类型、或枚举类型,1~n的数据类型必须与表达式的值类型相同。Switch语句首先计算表达式的值,如果表达式的计算结果和某个case后面的常量值相同,则执行该case后的若干个语句直到遇到break为止。此时如果该case语句中没有break语句,将继续执行后面case中的若干个语句,直到遇见break语句为止。若没有一个常量的值与表达式相同,则执行default后面的语句。default为可选的如果他不存在,且switch语句中表达式的值不与任何case的常量值相同,switch语句则不做任何处理。
Switch的语法如下:
Switch(表达式){
case 常量值1:
语句块1
Break;
……
case 常量值n:
语句块n
break;
default:
语句块n+1;
break
}
代码如下:
Scanner sc=new Scanner(System.in);//打开扫描器
System.out.printf("请输入成绩:");
int grade=sc.nextInt();
switch(grade) {
case 10:
case 9:
System.out.println("成绩为优");
break;
case 8:
System.out.println("成绩为良");
break;
case 7:
case 6:
System.out.println("成绩为中");
break;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:
System.out.println("成绩为差");
break;
default:
System.out.print("成绩无效");
}
sc.close();
运行结果:
文字总结
break和continue的区别:break的作用是跳出循环,continue跳过本次循环
代码如下:
for(int i=1;i<=3;i++) {
for(int j=1;j<=5;j++) {
if(j==4) {
break;
}
System.out.println("i="+i+"j="+j);
}
}
运行结果:
流程图:
continue:
代码如下:
for(int i=1;i<=20;i++) {//循环
if(i%2==0) {//判断
continue;//跳过本次循环
}
System.out.println(i); //打印i的值
}
流程图:
文字总结
while循环语句:也称条件判断语句,它的循环方式为利用一个条件来控制是否要继续反复执行这个语句。语法如下:
while(条件表达式){
语句序列}
当条件表达式的返回值为真时,则执行“{}”中的语句,当执行完“{}”中的语句后,重新判断条件表达式的返回值,直到表达式返回结果为假时,退出循环。
例题代码:
int x=1;//从1开始
int sum=0;//相加的结果
while(x<=1000) {//循环1000次
sum=x+sum;//sun与之前计算的和相加
x++;//每次循环后的x的值+1
}
System.out.println("sum="+sum);//输出最终相加的结果
}
运行结果:
流程图:
文字总结:
do…while循环,与while循环类似,它们之间的区别为先判断条件是否成立在执行循环体,而do……while则先执行一次循环,再判断条件是否成立。也就是说,do……while循环语句“{}”中的程序段至少要被执行一次。语法如下:
do{
语句序列
}while(条件表达式);
例题代码:
Scanner sc=new Scanner(System.in);//打开扫描器
int password;
do {
System.out.println("请输入6位数字密码");//提示输入
password=sc.nextInt();//在控制台记录下来
}while(931567!=password);//如果输入不是931567则继续执行循环
System.out.println("登陆成功");//提示循环已结束
sc.close();//关闭扫描器
运行结果:
流程图:
文字总结
for循环:for循环时java程序设计中最有用的循环之一,一个for循环可以用来重复执行某条语句,直到某个条件得到满足,for循环有两种语句,一种是传统的for语句,一种是foreach语句,下面分别介绍哦这两种语句的使用方法。
for语句:
传统的for语句中有三个表达式,其语法如下:
for(表达式1;表达式2;表达式3){
语句序列
}
表达式1:初始化表达式,负责完成变量的初始化。
表达式2:循环条件表达式,值为boolean型的表达式指定循环条件。等同于while循环里的表达式。
表达式3:每次循环结束后执行的语句,通常用来改变循环条件。
代码如下:
int sum=0;
for(int i=2;i<=100;i+=2) {
sum=sum+i;
}
System.out.println("2到100之间的所有偶数和为:"+sum);
运行结果为:
下附流程图: