跟着阿里学JavaDay05——Java基础语法(三) 一、if分支结构 二、switch开关语句 三、while循环结构 四、for循环结构 五、循环控制 六、循环嵌套

一、if分支结构

if的分支结构有三种:

if(判断条件)

{程序运行内容}

if(判断条件){

程序运行内容

}else{

程序运行内容

}

if(判断条件){

程序运行内容

}else if{

程序运行内容

}……中间可有多个else if……else{

程序运行内容

}

最后的else理论上可有省略不写,但是实际开发下,强烈建议以else结尾

三种if语句的应用实例

/*第一种:if(判断条件){运行内容}*/
public class Logic{
    public static void main(String[] args){
        int money = 20;
        if(money >= 15)
        {
            System.out.println("Can buy it");
        }
        System.out.println("Then,you can eat it.");
    }

}
/*第二种:if(判断条件){运行内容}else{运行内容}*/
public class Logic{
    public static void main(String[] args){
        int money = 2;
        if(money >= 15)
        {
            System.out.println("Can buy it");
        }else{
            System.out.println("Pick up other people's things");
        }
        System.out.println("Then,you can eat it.");
    }

}
/*第三种:if(判断条件){运行内容}
        else if(判断条件){运行内容}
        else{运行内容}
*/
public class Logic{
    public static void main(String[] args){
        int age = 66;
        if(age<=10){
            System.out.println("幼学");
        }else if(age<=20&&age>10){
            System.out.println("加冠");
        }else if(age<=30&&age>20){
            System.out.println("而立");
        }else if(age<=40&&age>30){
            System.out.println("不惑");
        }else if(age<=50&&age>40){
            System.out.println("半百");
        }else if(age<=60&&age>50){
            System.out.println("耳顺");
        }else if(age<=70&&age>60){
            System.out.println("古稀");
        }else if(age<=80&&age>70){
            System.out.println("耄耋");
        }else if(age<=90&&age>80){
            System.out.println("上寿");
        }else{
            System.out.println("期颐");
        }
    }

}
View Code

二、switch开关语句

switch是一个开关语句,它主要根据内容来进行判断,需要注意的是switch中可以判断的只能够是数据(int、char、枚举(JDK1.5后才有)、String(JDK1.7后才有)),而它不能使用逻辑判断,语法+代码如下:

/*
    switch语句格式:
    switch(数据){
        case 数值:
        满足是执行内容;
        break;
        case 数值:
        满足是执行内容;
        break;
        ……
        default:以上条件都不满足,执行这一句结束;
    }

    同样,我们的default可以省略不写,但是建议程序开发中尽量使用上
    另外,我们的数据和数值的数据类型要一致
    不能判断的数据是整型,数值是字符串
*/
public class Logic{
    public static void main(String[] args){
        int age = 6;
        String name = "小明";
        switch(age)
        {
            case 6:
                System.out.println("小明今年6岁");
            break;
            case 7:
                System.out.println("大家好我叫小明");
            break;
            default:System.out.println("你输入的数据查询不到!!");
        }
    }

}
View Code

switch语句在设计时,如果每一个case后面没有追加break语句,那么会在第一个匹配的case语句后,会继续执行switch中后续的语句,直至default/break完成结束。

三、while循环结构

所谓的循环结构是指某一段代码被重复执行的处理操作,在程序开发中提供有while语句来实现循环的定义,该语句有两类使用形式:

while(布尔表达式)

{

  条件满足时执行;

  修改循环条件;

}

do

{

  条件满足时执行;

  修改循环条件;

}while(布尔表达式);

两种循环使用示例:

/*
    while循环
*/
public class Logic{
    public static void main(String[] args){
        int sum = 0, num = 1;
        while(num <= 100)
        {
            sum +=num;
            num++;
        }
        System.out.println(sum);
    }
}//注意:这里的修改循环条件必须存在,否则会进入死循环,程序卡死不能输出。
View Code
/*
    do……while循环
*/
public class Logic{
    public static void main(String[] args){
        int sum = 0, num = 200;
        do
        {
            sum +=num;
            num++;
        }while(num <= 100);
        System.out.println(sum);
    }
}//注意:这里的修改循环条件必须存在,否则会进入死循环,程序卡死不能输出。

//这段代码输出为200,为什么呢?
//因为我们的num=200,
//do……while循环的特点是,先运行条件满足时的执行的语句,再进行布尔表达式的判断
//所以此时布尔表达式为false,执行了一次,sum ==200此时

//由此我们可以得到结论:我们的日常开发中,使用do……while循环语句的情况少之又少的。
View Code

四、for循环结构

for循环也是一种常规的使用结构,其语法如下:

for(定义循环的初始化数值;循环判断;修改循环数据){

  循环语句的执行;

}

for循环的使用示例

/*
    for循环实现1~100!
*/
public class Logic{
    public static void main(String[] args){
        int sum = 0;
        for(int num=1;num<=50;num++){
            sum +=num;
        }
        System.out.println(sum);
    }
}//注意:这里的修改循环数据必须存在,否则会进入死循环,程序卡死不能输出。
View Code

对于while和for循环的选择只有一个参考标准:

  • 在明确确定循环次数的情况下优先选择for循环;
  • 在不知道循环次数但是知道循环结束条件的的情况下使用while循环;

五、循环控制

在循环语句定义的时候,还有两个控制语句:break、continue

1、break主要的功能是退出整个循环结构

/*
    break循环结束使用示例
*/
public class Logic{
    public static void main(String[] args){
        for(int num=1;num<=10;num++){
            if(num==4){
                System.out.print(num);
                break;
            }else{
                System.out.print(num+"、");
            }
        }
    }
}
View Code

2、continue严格来讲只是结束当前的一次调用(结束当前循环)

/*
    continue循环结束使用示例
*/
public class Logic{
    public static void main(String[] args){
        for(int num=1;num<=10;num++){
            if(num==4){
                System.out.print(num);
                continue;
            }else{
                System.out.print(num+"、");
            }
        }
    }
}
View Code

六、循环嵌套

循环的嵌套,顾名思义就是套娃娃,在一个循环里在写一个循环的意思。

下面我用循环嵌套写一个九九乘法表(建议此代码段新手先尝试练习,在展开代码对比)

public class MultiplicationTable
{
    public static void main(String[] args){
        for(int i = 1;i<=9;i++){
            for(int f = 1;f<=i;f++){//f的大小由i决定,若i=100,则f=100
                System.out.print(f+"*"+i+"="+i*f+"	");
            }
            System.out.println();
        }
    }
}
View Code

另外再打印一个三角形

public class MultiplicationTable
{
    public static void main(String[] args){
        int line = 5;    //行数5行
        for(int flag = 0;flag < line;flag++){//先套个大娃娃:循环5行
            for(int space = 0;space<line - flag;space++){//然后每+1行,前面空格-1个
                System.out.print(" ");
            }
            for(int start = 0;start <= flag;start++){//接着每+1行,星星多+1个
                System.out.print("* ");
            }
            System.out.println();
        }
    }
}
View Code

感谢阿里云开发者社区,让我有整套系统的Java学习教程

同时,感谢博客园,让我有一个免费的博客,并让我做笔记学习!!