黑马程序员——Java编程语言学习总结 – 循环与选择性语句

本文详细介绍了Java编程中条件语句(if语句)和选择语句(switch语句)的基本概念、执行顺序、注意事项及应用实例。包括if语句的三种形式、执行流程、作用域、变量作用域限制、else语句的使用及避免常见错误;switch语句的使用场景、执行流程、default和break语句的应用。通过实例展示了如何运用这些语句解决实际问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------


 

(一)          条件语句

if 条件语句:代码按照顺序从上往下逐行执行。

格式有三种

if (){};

if(){};else(){};

if(){};else if(){};else if(){};........最后可以有else 也可以没有。

 

执行顺序:

根据条件表达式的返回值是true还是false决定程序的流程。如果是true,就执行语句体;如果是false,就什么都不做。   

作用域  :定义的变量的作用域,在它所属的那对{}内有效。

 

注意事项:

A:条件表达式:无论条件表达式是简单还是复杂,结果必须是boolean类型。

B:if语句后面可以不写{},但是,如果这样的话,它就只能控制后面的一条语句,如果想控制多条,就必须加{}。推荐:无论是控制一条还是多条,请都加上{}。

C:在if语句的{}前面不要写分号,否则,会对程序的结果有影响。一般来说:出现{}的时候,就不会有分号,有分号的时候,不会有{}

D:else后面是不能直接跟条件表达式。

E:最后的一个else可以不写,但是,一般建议加上。除非,你明确不需要。

F:if语句的第三种格式,一旦某个地方满足,if语句就不往下执行了。

案例测试:

考试成绩分等级。

              90-100   A等。

              80-89     B等。

              70-79     C等。

              60-69     D等。

              60以下 E等。

代码如下:

class IfTest

{

       publicstatic void main(String[] args)

       {

              intscore = 187;

              Stringlevel;

 

              if(score>=90&& score<=100)

              {

                     level= "A等";

              }

              elseif(score>=80 && score<90)

              {

                     level= "B等";

              }

              elseif(score>=70 && score<80)

              {

                     level= "C等";

              }

              elseif(score>=60 && score<70)

              {

                     level= "D等";

              }

              elseif(score>=0 && score<60)

              {

                     level= "E等";

              }

              else

              {

                     level= "分数有误";

              }

             

              System.out.println("分数:"+score+level);

       }

}

 

 

(二)选择语句

switch的语句:根据条件的成立与否,而决定要执行哪些语句的结构。

格式:

switch(只能是byte ,short,int ,char类型的值)1.5以后可以是枚举1.7后可以是String

{

case 常量1 :语句1;break;

case 常量2 :语句2;break;

.....可以有多个

default :语句;break;

}

执行流程:

从上往下,用表达式的值去和case后面的值进行匹配,如果有匹配的,就去执行该case所包含的语句。如果没有匹配的,就会去执行default里面的内容。

注意事项:

A:default可以省略吗?

可以。 但是,一般不省略,它相当于if的else语句,可以控制所有的非正常情况。假如你非常明确可以省略,那就省略。

B:break可以省略吗?

放在最后面的default的break是可以省略的。放在case语句中的break是可以省略的,但是可能结果有问题。所以,一般不省略。

C:default可以不放在最后面吗?

可以,但是一般都放在最后面。

D:switch语句什么时候结束吗?

       遇到break或者执行到switch语句的末尾。

(三)循环语句

循环结构是根据判断条件的成立与否,决定循环主体的执行次数。

循环结构的组成

循环体,就是要做的事情;

初始化条件,一般定义的是一个初始变量;

判断条件,用于控制循环的结束;控制条件,用于控制变量的变化,一般都是一个++/--操作

1,for循环语句

格式:

for(初始化条件;判断条件;控制条件)

{

    循环体;

}

执行流程

a,先执行初始化条件;

b,执行判断条件

c,根据判断条件的返回值   true:执行循环体。false:就结束循环

d:最后执行控制条件。返回到b继续

2,while循环语句

格式:

初始化条件;

while(判断条件)

{

         循环体;

           控制条件;

}

执行流程:

a:先执行初始化条件;

b:执行判断条件

c:根据判断条件的返回值:

                      true:执行循环体

                      false:就结束循环

d:最后执行控制条件。返回到b继续

 

3,do......while循环语句

格式:

初始化条件;

do{

      循环体;

      控制条件;

}while(判断条件);

执行顺序:

a,先执行初始化条件

b,执行循环体和控制条件

c,执行判断条件

d,根据返回值

            true:返回b。

            false:就结束循环

 

4,break;continue用法

break可以用于选择语句switch中和循环语句中;用于结束这个语句。

continue只能用于循环中;用于停止本次循环执行下一次。

语句可以带标号?

如果是带标号的break,continue,它控制的就是标号对应的循环

5,应用场景

(1)变量:发现有一个数据是变化的时候,就要用变量。

(2)if语句:如果是一个范围的判断,boolean类型的表达式的判断,几个数据的判断。

(3)switch语句:几个数据的判断。一般这种情况,有限选择switch。

(4)for语句:如果次数或者范围特别明确。(水仙花)

(5)while语句:如果次数或者范围不明确。(珠穆朗玛峰)

6,案例

//需求1:打印正三角形

//外循环控制行数,内循环控制列数

class forDemo1

{

       publicstatic void main(String[] args)

       {

              for(intx = 0; x<5; x++){

                for(int y = 0; y<x; y++){

                  System.out.print("*");

}

                  System.out.println();

       }

}

 

 

//需求2 :打印正三角形

//外循环控制行数,内循环控制列数

class forDemo1

{

       publicstatic void main(String[] args)

       {

              for(intx = 1; x<=9; x++){

                for(int y =1; y<=x; y++){

                  System.out.print(y+"*"+x+"="+y*x+"\t");

}

                  System.out.println();

             

       }

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值