• 跟着阿里学JavaDay05——Java基础语法(三)


    一、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学习教程

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

  • 相关阅读:
    Ubuntu 15.04 下apt-get安装JDK
    Ubuntu下apt-get安装Java,Tomcat
    虚拟化技术比较 PV HVM
    Java8 Lambda表达式教程
    SpringMVC实现上传和下载
    web.xml中的url-pattern映射规则
    java文件读写操作大全
    Java创建文件
    JAVA文件中获取路径及WEB应用程序获取路径方法
    session.flush()与session.clear()的区别及使用环境
  • 原文地址:https://www.cnblogs.com/Cion-Da/p/13032133.html
Copyright © 2020-2023  润新知