写点什么

【Java】:程序流程的控制

作者:翼同学
  • 2022 年 8 月 17 日
    广东
  • 本文字数:1512 字

    阅读完需:约 5 分钟

【Java】:程序流程的控制

1、前言


大家好,我是翼同学。今天的笔记内容是:


  • java 的流程控制



2、内容

2.1、块级作用域

C++ 一样,java 也是有块级作用域,即由一对花括号括起来的若干条 java 语句,块确定了变量的作用域。块级之间可以相互嵌套。只不过无法在嵌套的两个块中声明同名的变量。这就与 C++ 不同。在 C++ 中,我们可以在两个嵌套的块级中定义同名变量,这样使得内层同名变量可以覆盖外层同名变量。而 java 却不允许这种操作。


举个例子:


public static void main(String[] args){  int value = 0;  ...  {    int value = 0; //错误!无法在嵌套的两个块中声明同名的变量。  }}
复制代码


在上述例子中,java 代码无法通过编译。



2.2、条件语句

if

格式如下:


if (条件表达式) {  若干语句;  ...}
复制代码


当然,如果你的 if 语句中只有一条语句,那么你可以省略花括号(不过还是建议花括号不省略要好,这可以提高代码可读性)



if else


格式如下:


if (条件表达式) {  若干语句;  ...}else {  当if语句的条件为false时,执行else语句}
复制代码


注意,else 子句会根据就近原则,选择离自己最近的 if 语句进行匹配。


举个例子:


if()...if()...else...
复制代码


在上述例子中,else 语句会匹配第二个 if 语句。



if ... else if ...


我们可以重复交替的使用 if else 语句。


格式如下:


if(条件1){  ...}else if(条件2){  ...}else if(条件3){  ...}...else {  当上述条件都不符合时,执行else语句}
复制代码



2.3、循环语句

while


格式如下:


while(条件) {  若干语句  ...}
复制代码


  • 当条件为 true 时,执行 while 块中的语句。

  • 如果条件为 false,则 while 循环体一次也不执行。

do ... while


格式如下:


do{  若干语句  ...}while(条件) 
复制代码


可以看到,do ... while语句首先会执行一遍块中的语句,再来检测此时循环条件是否为真,如果为 true,则再一次重复执行语句,再检测循环条件,以此类推。当循环条件为假时,退出循环。

for


还有一种循环叫做for循环。


格式如下:


for(初始化计数器; 检测计数器; 更新计数器){  若干语句  ...}
复制代码


从格式中可以看出,for循环语句的参数中:


  • 第一部分通常是计数器的初始化

  • 第二部分是每一轮循环执行之前要检测的循环条件

  • 第三部分是计数器的更新语句

  • 注意:这三大部分之间通过分号;隔开,并且一般都是对同一个计数器变量进行初始化、检测以及更新。


因此,for循环是一种可控制迭代的循环结构,其利用每次迭代之后更新的计数器或者类似的变量来控制迭代次数。


另外需要注意,无论是计数器变量还是for循环内部定义的变量,在循环体外部是无法访问的,也就是说这些变量只能在循环体的内部使用。如果我们希望在 for 循环体之外使用循环体内部的有关变量参与的运算,就必须在循环语句的外部进行声明。


举个例子,我们利用for循环来计算1+2+3+...+9+10,就需要在外部先声明一个变量来存放参与for循环的计数器变量i


int result = 0;for(int i = 1; i<=10; i++) {  result += i;}System.out.println(result);  //=> 55
复制代码

2.4、选择语句

switch


与 C++一样,java 也拥有switch语句。可用于多重选择分支结构。


举个例子,我们需要构建一个具有三个选项的菜单模块,可以使用以下代码:


Scanner in = new Scanner(System.in);System.out.println("请输入选项(1 / 2 / 3)");int choice = in.nextInt();switch (choice){    case 1:        若干语句...        break;    case 2:        若干语句...        break;    case 3:        若干语句...        break;    default:        若干语句...        break;}
复制代码


可以看到,在上述例子中,switch语句将从与选项值匹配的case值开始执行,直到遇见break语句。如果没有相匹配的case值,则执行default中的语句。



3、写在最后


好了,今天的笔记就记到这里。

发布于: 刚刚阅读数: 3
用户头像

翼同学

关注

知行合一 2022.08.02 加入

@珠海科技学院

评论

发布
暂无评论
【Java】:程序流程的控制_Java_翼同学_InfoQ写作社区