【JavaSE】Java基础语法(三)

简介: 【JavaSE】Java基础语法(三)

1. 🍼流程控制语句


在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。所以,我们必须清楚每 条语句的执行流程。而且,很多时候要通过控制语句的执行顺序来实现我们想要的功能。


1.1 流程控制语句分类


🍉顺序结构


🍉分支结构(if, switch)


🍉循环结构(for, while, do…while)


1.2 分支结构之if语句


1.2.1 if语句格式3案例


需求:小明快要期末考试了,小明爸爸对他说,会根据他不同的考试成绩,送他不同的礼物,假如你可以控制小明的得分,请用程序实现小明到底该获得什么样的礼物,并在控制台输出。


分析:


🍉①小明的考试成绩未知,可以使用键盘录入的方式获取值


🍉②由于奖励种类较多,属于多种判断,采用if…else…if格式实现


🍉③为每种判断设置对应的条件


🍉④为每种判断设置对应的奖励


import java.util.Scanner;
public class IfTest02 {
  public static void main(String[] args){
    // 1. 使用Scanner录入考试成绩
    Scanner sc = new Scanner(System.in);
    System.out.println("请输入您的成绩:");
    int score = sc.nextInt();
    // 2. 判断成绩是否在合法范围内 0~100
    if(score >=0 && score <= 100){
      // 合法成绩
      // 3. 在合法的语句块中判断成绩范围符合哪一个奖励
      if(score >= 95 && score <= 100){
      System.out.println("自行车一辆");
      }else if(score >= 90 && score <= 94){
      System.out.println("游乐场一次");
      }else if(score >= 80 && score <= 89){
      System.out.println("变形金刚一个");
      }else {
      System.out.println("挨顿揍, 这座城市又多了一个伤心的人~");
      }
    }else{
    // 非法的话, 给出错误提示
      System.out.println("您的成绩输入有误!");
    }
  }
}


2. 🍼switch语句


2.1 分支语句switch语句


格式 (表达式支持 byte short int char String 枚举)


switch (表达式) {
  case 1:
    语句体1;
    break;
  case 2:
    语句体2;
    break;
  ...
  default:
    语句体n+1;
    break;
}


执行流程


  • 🍓首先计算出表达式的值


  • 🍓其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结 束。


  • 🍓最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。


2.2 switch案例-减肥计划


需求:键盘录入星期数,显示今天的减肥活动


🍓周一:跑步


🍓周二:游泳


🍓周三:慢走


🍓周四:动感单车


🍓周五:拳击


🍓周六:爬山


🍓周日:好好吃一顿


实例代码:


public static void main(String[] args){
  // 1. 键盘录入星期数据,使用变量接收
  Scanner sc = new Scanner(System.in);
  System.out.println("请输入");
  int week = sc.nextInt();
  // 2. 多情况判断,采用switch语句实现
  switch(week){
    // 3. 在不同的case中,输出对应的减肥计划
    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:
      System.out.println("爬山");
      break;
    case 7:
      System.out.println("好好吃一顿");
      break;
    default:
      System.out.println("您的输入有误");
      break;
    }
  }
}


2.3 switch语句case穿透


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


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


示例代码


/*
  case穿透是如何产生的?
  如果switch语句中,case省略了break语句, 就会开始case穿透.
  现象:
  当开始case穿透,后续的case就不会具有匹配效果,内部的语句都会执行
  直到看见break,或者将整体switch语句执行完毕,才会结束。
*/
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 循环


3.1 循环语句-for循环


循环:


循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复 执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形 成死循环。


for循环格式:


for (初始化语句;条件判断语句;条件控制语句) {
  循环体语句;
}


3.2 for循环案例-求1-100偶数和


需求:求1-100之间的偶数和,并把求和结果在控制台输出 }


示例代码


public class ForTest03 {
  public static void main(String[] args) {
    //求和的最终结果必须保存起来,需要定义一个变量,用于保存求和的结果,初始值为0
    int sum = 0;
    //对1-100的数据求和与1-5的数据求和几乎完全一样,仅仅是结束条件不同
    for(int i=1; i<=100; i++) {
      //对1-100的偶数求和,需要对求和操作添加限制条件,判断是否是偶数
      if(i%2 == 0) {
      sum += i;
      }
    }
    //当循环执行完毕时,将最终数据打印出来
    System.out.println("1-100之间的偶数和是:" + sum);
  }
}


4. 🍼while循环


while循环完整格式:


初始化语句;
while (条件判断语句) {
  循环体语句;
  条件控制语句;
}


while循环执行流程


🍗①执行初始化语句


🍗②执行条件判断语句,看其结果是true还是false


🌯如果是false,循环结束
  🌯如果是true,继续执行


🍗③执行循环体语句


🍗④执行条件控制语句


🍗⑤回到②继续


实例代码:


public class WhileDemo {
  public static void main(String[] args) {
    //需求:在控制台输出5次"HelloWorld"
    //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++;
    }
  }
}


4.1 while循环案例-珠穆朗玛峰


需求:世界最高山峰是珠穆朗玛峰(8844.43米=8844430毫米),假如我有一张足够大的纸,它的厚度是0.1毫米。请问,我折叠多少次,可以折成珠穆朗玛峰的高度?


示例代码:


public class WhileTest {
  public static void main(String[] args) {
    //定义一个计数器,初始值为0
    int count = 0;
    //定义纸张厚度
    double paper = 0.1;
    //定义珠穆朗玛峰的高度
    int zf = 8844430;
    //因为要反复折叠,所以要使用循环,但是不知道折叠多少次,这种情况下更适合使用while循环
    //折叠的过程中当纸张厚度大于珠峰就停止了,因此继续执行的要求是纸张厚度小于珠峰高度
    while(paper <= zf) {
      //循环的执行过程中每次纸张折叠,纸张的厚度要加倍
      paper *= 2;
      //在循环中执行累加,对应折叠了多少次
      count++;
    }
    //打印计数器的值
    System.out.println("需要折叠:" + count + "次");
  }
}


相关文章
|
2月前
|
Java Apache Maven
Java百项管理之新闻管理系统 熟悉java语法——大学生作业 有源码!!!可运行!!!
文章提供了使用Apache POI库在Java中创建和读取Excel文件的详细代码示例,包括写入数据到Excel和从Excel读取数据的方法。
64 6
Java百项管理之新闻管理系统 熟悉java语法——大学生作业 有源码!!!可运行!!!
|
2月前
|
Java 开发工具 Android开发
Kotlin语法笔记(26) -Kotlin 与 Java 共存(1)
本系列教程笔记详细讲解了Kotlin语法,适合需要深入了解Kotlin的开发者。若需快速学习Kotlin,建议查看“简洁”系列教程。本期重点介绍了Kotlin与Java的共存方式,包括属性、单例对象、默认参数方法、包方法、扩展方法以及内部类和成员的互操作性。通过这些内容,帮助你在项目中更好地结合使用这两种语言。
50 1
|
2月前
|
Java 开发工具 Android开发
Kotlin语法笔记(26) -Kotlin 与 Java 共存(1)
Kotlin语法笔记(26) -Kotlin 与 Java 共存(1)
35 2
|
20天前
|
Java
java do while 的语法怎么用?
java do while 的语法怎么用?
34 3
|
2月前
|
Java 编译器 Android开发
Kotlin语法笔记(28) -Kotlin 与 Java 混编
本系列教程详细讲解了Kotlin语法,适合需要深入了解Kotlin的开发者。对于希望快速学习Kotlin的用户,推荐查看“简洁”系列教程。本文档重点介绍了Kotlin与Java混编的技巧,包括代码转换、类调用、ProGuard问题、Android library开发建议以及在Kotlin和Java之间互相调用的方法。
31 1
|
2月前
|
安全 Java 编译器
Kotlin语法笔记(27) -Kotlin 与 Java 共存(二)
本教程详细讲解Kotlin语法,适合希望深入了解Kotlin的开发者。若需快速入门,建议查阅“简洁”系列教程。本文重点探讨Kotlin与Java共存的高级话题,包括属性访问、空安全、泛型处理、同步机制及SAM转换等,助你在项目中逐步引入Kotlin。
30 1
|
2月前
|
Java 编译器 Android开发
Kotlin语法笔记(28) -Kotlin 与 Java 混编
Kotlin语法笔记(28) -Kotlin 与 Java 混编
33 2
|
2月前
|
Java 程序员 编译器
在Java编程中,保留字(如class、int、for等)是具有特定语法意义的预定义词汇,被语言本身占用,不能用作变量名、方法名或类名。
在Java编程中,保留字(如class、int、for等)是具有特定语法意义的预定义词汇,被语言本身占用,不能用作变量名、方法名或类名。本文通过示例详细解析了保留字的定义、作用及与自定义标识符的区别,帮助开发者避免因误用保留字而导致的编译错误,确保代码的正确性和可读性。
59 3
|
2月前
|
安全 Java 编译器
Kotlin语法笔记(27) -Kotlin 与 Java 共存(二)
Kotlin语法笔记(27) -Kotlin 与 Java 共存(二)
34 0
|
3月前
|
Java 数据安全/隐私保护
java之基本语法
java之基本语法
35 6
下一篇
DataWorks