03 Java基础-流程控制语句及Random

2021/9/15 17:06:20

本文主要是介绍03 Java基础-流程控制语句及Random,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

03 Java基础-流程控制语句及Random

  1. if语句格式

    • 需求:按考试分数判断优良可查。

      import java.util.Scanner;
      public class IfDemoScanner{
          public static void main(String[] args){
              Scanner sc = new Scanner(System.in);
              System.out.println("输入成绩:");
              int score = sc.nextInt();
              if ( score >= 0 && score <= 100){
                  System.out.println("成绩合法。");
                  if ( score >= 90 ){
                      System.out.println(score + " 优秀");
                  }
                  else if (score >= 70 && score < 90){
                      System.out.println(score + " 良好");
                  }
                  else if (score >= 60 && score < 70){
                      System.out.println(score + " 及格");
                  }
                  else {
                      System.out.println(score + " 不及格");
                  }
              }
              else {
                  System.out.println("成绩不合法、");
              }
          }
      }
      
  2. 分支语句switch

    • 概述 : 如果switch语句中,case省略了break语句, 就会开始case穿透

      当开始case穿透,后续的case就不会具有匹配效果,内部的语句都会执行,直到看见break,或者将整体switch语句执行完毕,才会结束。

    • 需求 : 键盘录入星期数,输出工作日、休息日 (1-5)工作日,(6-7)休息日

      import java.util.Scanner;
      public class SwitchTest2{
          public static void main(String[] args){
              Scanner sc = new Scanner(System.in);
              System.out.println("请输入星期数:");
              int week = sc.nextInt();
      
              switch (week){
                  case 1:
                  case 2:
                  case 3:
                  case 4:
                  case 5:
                      System.out.println("工作日");
                      break;
                  case 6:
                  case 7:
                      System.out.println("休息日");
                      break;
                  default:
                      System.out.println("输入错误");
                      break;
              }
          }
      }
      
  3. for循环

    • for循环格式

      for (初始化语句;条件判断语句;条件控制语句) {
      	循环体语句;
      }
      
    • eg:需求:在控制台输出所有的“水仙花数”,要求每行打印2个

      • 水仙花数,指的是一个三位数,个位、十位、百位的数字立方和等于原数
      • 例如153 3*3*3 + 5*5*5 + 1*1*1 = 153
      public class ForTest2{
          public static void main(String[] args){
              int count=1;
              for (int i=100;i<=999;i++){
                  int ge = i%10;
                  int shi = i/10%10;
                  int bai = i/10/10%10;
                  if (ge*ge*ge + shi*shi*shi + bai*bai*bai == i){
                      if ( count % 2 != 0 ){
                          System.out.print(i + "是水仙花数###  ");
                      }
                      else
                          System.out.println(i + "是水仙花数###");
                      count++;
                  }
              }
          }
      }
      
  4. while循环

    • while循环格式

      初始化语句;
      while (条件判断语句) {
      	循环体语句;
          条件控制语句;
      }
      
    • eg:需求:世界最高山峰是珠穆朗玛峰(8844.43米=8844430毫米),假如我有一张足够大的纸,它的厚度是0.1毫米。请问,我折叠多少次,可以折成珠穆朗玛峰的高度?

      public class WhileTest1{
          public static void main(String[] args){
              double paper=0.1;
              int count=0;
              while (paper <= 8844430){
                  paper *= 2;
                  count++;
              }
              System.out.println(count);
          }
      }
      
  5. do while循环

    • do while循环格式

      初始化语句;
      do {
      	循环体语句;
      	条件控制语句;
      }while(条件判断语句);
      
    • eg:打印5次hello wrold!!

      public class Dowhile{
          public static void main(String[] args){
              //for循环实现
              for(int i=1; i<=5; i++) {
                  System.out.println("HelloWorld");
              }
              System.out.println("--------");
              //while循环实现
              int j = 1;
              while(j<=5) {
                  System.out.println("HelloWorld");
                  j++;
              }
              System.out.println("--------");
              //do while循环实现
              int i=1;
              do {
                  System.out.println("hello world!!");
                  i++;
              } while (i<=5);
          }
      }
      
  6. 三中循环的区别

    • 三种循环的区别

      • for循环和while循环先判断条件是否成立,然后决定是否执行循环体(先判断后执行)

      • do...while循环先执行一次循环体,然后判断条件是否成立,是否继续执行循环体(先执行后判断)

    • for循环和while循环的区别

      • 条件控制语句所控制的自增变量,因为归属for循环的语法结构中,在for循环结束后,就不能再次被访问到了

      • 条件控制语句所控制的自增变量,对于while循环来说不归属其语法结构中,在while循环结束后,该变量还可以继续使用

  7. 死循环

    • 死循环格式

      for死循环格式 :
      for(;;){
      
      }
      
      while死循环格式 :
      
      while(true){
      
      }
      
      do..while死循环格式 :
      
      do{
      
      }while(true);
      
  8. 跳转控制语句

    • 跳转控制语句(break)

      ​ 跳出循环,结束循环

    • 跳转控制语句(continue)

      ​ 跳过本次循环,继续下次循环

      ​ continue只能在循环中进行使用

  9. 减肥案例

    • 需求:程序运行后,用户可多次查询星期对应的减肥计划,直到输入0,程序结束

      import java.util.Scanner;
      public class Test{
          public static void main(String[] args){
              lo:while(true){
              System.out.println("请输入要查看的星期数:");
              System.out.println("不查看,输入0退出。");
              Scanner sc = new Scanner(System.in);
              int num = sc.nextInt();
                  switch(num){
                      case 0:
                          System.out.println("thank you!");
                          break lo;
                      case 1:
                          System.out.println("跑步");
                          break;
                      case 2:
                          System.out.println("游泳");
                          break;
                      case 3:
                          System.out.println("攀岩");
                          break;
                      case 4:
                          System.out.println("跳绳");
                          break;
                      case 5:
                          System.out.println("跳伞");
                          break;
                      case 6:
                      case 7:
                          System.out.println("休息");
                          break;
                      default:
                          System.out.println("输入有误!!");
                          break;
                  }
              }
          }
      }
      
  10. Random练习

    • 猜数字,猜大了,猜小了,猜对了。

      import java.util.Random;
      import java.util.Scanner;
      
      public class RandomDemo{
          public static void main(String[] args){
              Scanner sc = new Scanner(System.in);
              Random rd = new Random();
              int randomNum = rd.nextInt(10) + 1;
      
              while(true){
                  System.out.println("输入1-10的数字:");
                  int inputNum = sc.nextInt();
                  if( randomNum == inputNum ){
                      System.out.println("猜对了,没奖。");
                      break;
                  }
                  else if ( inputNum > randomNum ){
                      System.out.println("猜大了,你输入的是:" + inputNum + "随机的是:" + randomNum );
                  }
                  else if ( inputNum < randomNum ){
                      System.out.println("猜小了,你输入的是:" + inputNum + "随机的是:" + randomNum );
                  }
              }
              System.out.println("感谢体验。");
          }
      }
      


这篇关于03 Java基础-流程控制语句及Random的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程