【Demo 0002】Java基础-语句

时间:2022-11-14 15:53:44

本章学习要点:

       1.  掌握Java关健语句使用方法;  

       2.  理解与语句相关的关键字用法;

一、Java 关键语句

       Java语句以及关联关键字与C完全相同;

        1.  顺序语句;

        2.  分支语句(if, switch)

             if (条件) {

                条件为真,被执行;

             }else {

                条件为假,被执行;

             }

            switch(查询值) {      // 查询值 整数类型, 字符串

            case 匹配条件1:   执行语句;  break;   //  没有break时被语句一直往后执行直到break; 或default;

            case 匹配条件2:   执行语句;  break;

            default:   未被匹配条件执行;  break;

           }

        3.  循环语句 (do while, for, while)

             for  (初始值;匹配条件;值更新) {

                 循环体;    

            }

           do {

               循环体;     

           } while (条件);

           while (条件)  {

               循环体;

          }

二、与语句相关关键字

      1.  break;      //  可用于if, switch, do while, while, for中,实现终止代码;

      2.  continue;  //  用于循环语句,表示不往下执行,继续下一个循环过程;

二、代码演示

public class Demo0002 {

  void usage() {

    System.out.println("--------------- 生活百科 --------------------");

    System.out.println("1. 查日期在当年中的某一天  2. 退出");

    System.out.println("--------------------------------------------");

    System.out.print("请输入命令:");

  } 

 

  int dayToDays(int year, int month, int day) {

     boolean bLeapYear = false;

     if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {

       bLeapYear = true;

     }

 

     int dayInMonths[] = {31, 0, 31, 30, 31, 30, 31, 31, 30, 31,30, 31};

 

     int days = 0;

     for (int ii = 1; ii <= month; ii++) {

       if (month == ii) {

         break;

       }

       days += dayInMonths[ii - 1];  

     }

 

     if (month > 2) {

       if (bLeapYear) {

         days += 28;

       } else {

         days += 29;

       }

     }

     days += day;

 

     return days;

   }

 

   void dayInYear() {

     Scanner scanner= new Scanner(System.in);

     int year= 0;

     int month= 0;

     int day= 0; 

     do {

       System.out.println("请输入年份:");

       year = scanner.nextInt();

     } while (!(year >= 1900 && year <= 2060));

 

     do {

       System.out.println("请输入月份:");

       month = scanner.nextInt();

     } while (!(month >= 1 && month <= 12));

 

     do {

       System.out.println("请输入日期:");

       day = scanner.nextInt();

     } while (!(day >= 1 && day <= 31));

 

     System.out.format("%d-%d-%d是%d中的第%d天\n", year, month, day, year, dayToDays(year, month, day));

  }

 

  public static void main(String[] args) {

    Demo0002 demo = new Demo0002();

    Scanner scanner = new Scanner(System.in);

    boolean bQuit = false;

    while (!bQuit) {

      demo.usage();

      switch (scanner.nextInt()) {

      case 1:  demo.dayInYear(); break;

      case 2:bQuit = true;System.out.println("系统己退出!");break;

      default:System.out.println("输入错误, 重新输入");break;

      }

    } 

  }

}

 

演示代码