Java基础-04-流程控制

38 阅读2分钟

Java基础-04-流程控制

与其他语言相似,Java语言使用条件语句和循环结构确定了流程控制

条件语句

if

格式:

if(布尔表达式){
    // 如果布尔表达式为真将指定的语句
}

举例:

int a = 10;
int b = 10;
if(a == 10){
    b = 100;
}

当a和10相等的时候,就把100赋给b,如果a不等于10就什么也不做

if...else

格式:

if(布尔表达式){
    // 如果布尔表达式为真将指定的语句
}else{
    // 如果布尔表达式为假将指定的语句
}

举例:

int a = 10;
int b = 10;
if(a == 10){
    b = 100;
}else{
    b = 200;
}

当a和10相等的时候,就把100赋给b,如果a不等于10,就把200赋值给b

if...else if...else

格式:

if(布尔表达式1){
    // 如果布尔表达式1为真将指定的语句
}else if(布尔表达式2){
    // 如果布尔表达式2为真将指定的语句
}else{
    // 如果所有布尔表达式为假将指定的语句
}

举例:

int a = 10;
int b = 10;
if(a == 10){
    b = 100;
}else if(a==100){
    b = 200;
}else{
    b = 30;
}

当a和10相等的时候,就把100赋给b,如果a等于100,就把200赋值给b,其余条件就把30赋予b 注意:

  1. 最多有一个else语句且在所有的else if之后
  2. 一旦有一个else if成立,其他的都会跳过执行

switch

多重选择语句,在处理多个选项时,switch比起if...else会更加的合适
格式:

switch(expression){
    case value1 :
        //语句 1
        break; //可选 
    case value2 : 
        //语句 2
        break; //可选 
    //你可以有任意数量的case语句 
    default : //可选 
        //语句
}

当expression和value1相等的时候,执行语句1,并跳出循环,如果expression没有value值与之相等就执行default语句。
如果没有break语句,就会从匹配到的语句一直向下执行,指导程序结束或者遇到break。

循环

Java的循环有三种结构:

  • for循环
  • while循环
  • do...while循环

while循环

只要布尔值为真,循环就一直走下去
格式:

while(布尔表达式){
    // 循环内容
}

举例:

int i = 10;
while(i < 20){
    System.out.println(i);
    i++;
}

do...while循环

与while循环类似,while循环是如果布尔值为假,就一次也不执行
do...while是我们即使不满足条件(布尔值为假),也至少要执行一次
格式:

do{
    // 代码语句
}while(布尔表达式);

举例:

int i = 10;
do{
    System.out.println(i);
    i++;
}while(i<20);

for循环

for循环是比较简单常用的循环。
分为了三个部分:

  • 第一部分通常用于计数器的初始化
  • 第二部分给出每次新一轮循环执行前要检测的循环条件
  • 第三部分指示要如何更新计数器

注意: for 语句的 3 个部分应该对同一个计数器变量进行初始化、 检测和更新
格式:

for(初始化; 布尔表达式; 更新) { 
    //代码语句 
}

举例:

for(int x = 10; x < 20; x = x+1) { 
    System.out.println(x);
}

如果在for循环内部定义了一个变量,在外面是没有办法访问的到的,循环体里面定义的参数在外面也是没有办法访问的。

增强for循环

主要用于数组的循环,Java5引入
格式:

for(声明语句:表达式){
    //代码句子
}

注意:
声明语句: 声明一个新的变量,该变量类型要与数组的类型相匹配
表达式: 表达式就是需要循环的数组 举例:

int nums[] = {10,20,30,40};

for(int item : nums){
    System.out.println(item);
}

中断控制流程语句

break

break主要用于循环语句和switch语句中,其作用是跳出当前语句块 举例:

int [] numbers = {10, 20, 30, 40, 50}; 
for(int x : numbers ) { 
    // x 等于 30 时跳出循环 
    if( x == 30 ) {
        break; 
    } 
    System.out.println( x ); 
}

其结果是

10
20

continue

continue 主要用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代。
跳过当前循环,进入到下一次循环
举例:

int [] numbers = {10, 20, 30, 40, 50}; 
for(int x : numbers ) { 
    if( x == 30 ) { 
        continue; 
    } 
    System.out.println( x );
}

其结果是

10
20
40
50

参考 菜鸟教程 《Java核心技术卷1》