A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

同学们,今天我们学习了流程控制语句

今日需要掌握的知识有
1、if ,if...else,if...else if...else  三种if语句的区别

2、default 一定要放在最后么?  用自己的话来解释下case的穿透

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?

27 个回复

倒序浏览
唐杰

1、if ,if...else,if...else if...else  三种if语句的区别
单if语句只有一个条件判断,true或false; if-else语句是二选一个条件执行, if-else,else-if为N选一个条件执行.

2、default 一定要放在最后么?  用自己的话来解释下case的穿透

default不一定要放在最后,无论顺序放哪里满足条件即可执行.case如果在case语句结束时不使用break,case会继续向下执行代码,或者多个case为同一个执行条件,只需要在最后一个满足条件的case写输出语句跟break即可,起到简化代码的作用.

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?


次数确定时候使用for循环,次数不确定时使用while循环,另外while和do-while一般都是变量定义在外面,只要在定义行直到作用域结束都可以使用,do-while不管判断条件是否为true,必定执行一次.
回复 使用道具 举报 0 1
本帖最后由 fjlouie 于 2018-5-31 21:10 编辑

刘杭生
1、if ,if...else,if...else if...else  三种if语句的区别
        1) if        
                就是:判断条件为true就执行,false就不执行.
        2) if...else        
                就是:判断条件为true就执行if的语句体,false就执行else的语句体.
        3) if...else if...else
                        就是:判断条件为true就执行一地个if的语句体,false就执行下一个if的判断,
                        为true就执行第二个if语句体,还是false就执行else的语句体.
2、default 一定要放在最后么?  用自己的话来解释下case的穿透
        1) 不一定,对顺序没有要求.
        2) case如果后面没有break,那么他执行下一个case,直到找到break为止.
3、三种循环语句的区别?什么时候用for语句,什么时候while语句?
        1) for跟while循环里如果判断条件都为false那么一次都不会执行.do-while会至少执行一次.
            for里面定义的变量只能自己用,while跟do-while定义的变量自己用完,别人也还可以用.
        2) 知道具体循环次数就用for,不知道就用while.
回复 使用道具 举报
1,、if ,if...else,if...else if...else  三种if语句的区别

if 判断ture执行括号内代码 if (ture)else(false)二选一 if else if省略号 else 多种选择  

2、default 一定要放在最后么?  用自己的话来解释下case的穿透

不一定  。
没有 break关键字 一直run

3三种循环语句的区别?什么时候用for语句,什么时候while语句?

do while 不管条件判断结果 hui执行一次循环体,for中 变量 作用域  与 其他 两种 不同   循环次数确定时 使用for 否则 反之
康春达
回复 使用道具 举报
名:刘思聪

1、if ,if...else,if...else if...else  三种if语句的区别if为最基本的形式,即当条件满足时执行制定的语句段否则直接跳过该语句段;if......else......则是“二者取其一”如果满足条件则执行第一个语句段否则执行第二个语句段;而if ...else if...else...则是“多者取其一”,如果满足第一个条件则执行第一个语句段;否则看第二个比较表达式是否满足,如果满足则执行第二个语句段;……直到当前面所有比较表达式都为false的时候,执行最后一个else后面的语句段。

2、default 一定要放在最后么?  用自己的话来解释下case的穿透
default  可以不放在最后。用自己的话来理解case的穿透:switch语句,会从找到的case开始逐条向下执行,直到遇到break或者语句最后(大括号结尾),如果在一个case的语句段后面没有遇到break的话,语句会进入到下一个case里继续执行而不会停下来,也就是穿透了这个case。

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?



for、whlie循环如果循环条件从未被满足过,循环体一次也不会执行,而do...while...至少要无条件执行一次循环体。
for中定义的i(指常用的控制循环的变量)被定义在循环语句内,只能在循环内部被访问,而while和do...while则是定义在语句外,循环结束后仍旧可以访问。

当循环次数等条件比较明确(如直接知道需要多少次循环)的情况下,尽量使用for语句,而其他情况下尽可能使用while语句。
回复 使用道具 举报
1、if语句只有一个判断条件,结果是真就执行大括号里的.为假就执行大括号外面的下一行代码.     if...else 是判断条件为真,就执行if下面的执行体,否则,就执行else的执行体.
     if...else if... 就有点不同了,理论上可以有N个else if.  适用于判断多种不同条件下的结果.例如: 90分优秀,80分优良,70分良.60分及格.60分一下不及格,再来个default判断不属于       正常分数的情况.

2、default可以往前挪.
     case穿透是在switch里面,没有遇到break就一直从上往下执行代码.直到遇见break或者到语句结束.

3、区别:  1.for循环的变量,是定义在小括号里面,只能用在for循环内部,不能用在循环外面.

                  while和do-while循环是在循环外面定义的,其他代码也可以用.
               2.for循环和while循环,在判断条件为假的时候,有可能一行代码都不执行
                  而do-while循环,至少都会执行一次
      什么时候用for循环或while循环:  在知道要循环多少次的时候用for循环.在不知道要循环多少次的时候,用while循环.

回复 使用道具 举报
张亚康

1:单if语句关系表达式为true才会执行语句体;
if-else是二者选其一;
拓展的if-else是多者选其一。
2:不一定放在最后,因为case的顺序可以颠倒,但case常量值不能重复,而且break
也可以省略不写,匹配到哪一个case就从哪一个位置向下执行,直到遇到break或者整体结束为止。
3:如果条件判断从未满足过,那么for循环和while将不会执行,
但do-while循环会执行至少一次;
for循环的变量在小括号当中定义,只有循环内才可以使用;
但while和do-while的初始化语句体在循环外;
所以出来循环之后还可以继续使用;次数确定一般用for循环,不确定用while循环
回复 使用道具 举报
吴烨 初级黑马 2018-5-31 21:09:06
8#
1.if格式:是true就执行,false就不执行  if..else:如果是true就执行前面的语句, false就执行后面的语句。
if...else  if else  :每次都判断,ture就执行,false就继续往下看,直到true为止,如果都是false,就执行最后的语句

2,case的穿透就是在 case后不写break的话,就会出现穿透,不会判定接下来case的值,直接向后运行,直到出现false或者整体switch为止
3. 公式不同,执行顺序不同, do while的话一定会至少执行一次   for循环的值只能在循环内部只用,因为值在循环内部,while的话值可以拿出来用,因为值在外面
回复 使用道具 举报
1,【1】如果判断为true的话执行if语句,为false的话就不执行语句。
      【2】如果判断为true的话执行if的语句,为false的话就执行else的语句。
      【3】从上到下按顺序如果判断第一个if的条件为true的话执行此if的语句,为false的话就继续判断第二个if的条件,以此类推,所有的if条件都不满足的话最后就执行else语句。
2,  default需要放在最后面,其他case都不满足的情况下才会执行default。
        case的穿透:当某个case里面没有放break的时候就会执行下一个case的语句,直到遇到break才跳出。
3,  【1】循环条件的初始值定义的作用域不同,for是定义在内部的,循环外使用不了。while可定义在循环体外,外部可以使用。【2】步进语句所在的位置不同。while的步进语句写在循环体内。会被循环体的一些语句影响。而for的步进语句在圆括号里,不会被影响。【3】do{}while();会先执行一次循环体再判断条件,其他两种不会。  
          当循环次数确定的时候用for循环,不确定的时候用while循环。
回复 使用道具 举报
1. if 是判断后只有一种结果,true输出,false直接结束;if...else  是判断后分两种情况输出结果,是true输出一种,是false输出另一种;if...else if...if  是判断多种情况,多种判断条件,输出符合条件的结果。
2. default不一定要放在最后。 case运行时,只要没有遇到break,会继续向下一个case运行,直到碰到break才停止运行。
3. 区别:当条件判断不符合时,for、while没有运行,do whlie 运行1次;for 的变量定义在循环内,只能循环内使用,while、do while的变量定义在循环外,循环外还能使用。
    循环次数已知用for,循环次数未知用while。
回复 使用道具 举报
林焕
1、if适合一种情况
if...else...两种情况
if...else if...else 多种情况
========一点也不华丽的分割线========
2、default不一定要放在最后;case的穿透性现象,就是case后面不跟break,不会判断下一个case的值,直接向后运行,直到遇到break或者整体switch结束。
========一点也不华丽的分割线========
3、循环次数已知的时候用for;
循环次数未知时用while;
do...whilewu条件循环一次;




回复 使用道具 举报
杨银万
1、单个if语句相当于开关语句,if(条件)中的条件成立时打开开关即执行内部代码,条件不成立则不执行;if...else语句增加了在条件不成立的情况下便执行else中的代码,即条件成立与不成立都执行相应的代码;if...else if...else语句则可以判断多个条件,根据不同条件执行不同代码。
2、在switch语句中,若case后都有break语句结尾,则default放在哪都没有影响;case的穿透即在switch(表达式)执行的时候,会找到case后与之匹配的常量值的位置开始顺序执行代码,直到遇到break语句结束或整个switch的结束,若没有,则会跳过case语句,顺序执行下面的代码。
3、区别:(1)当循环条件不成立时,do-while语句至少会执行一次,for和while执行0次。(2)for循环语句声明的初始化变量只能在循环体中使用,while和do-while语句的初始化变量在循环体外。
用法:当需要循环的次数明确时,可以使用for语句比较方便。若需要循环的次数不确定,可以使用while语句与break配合使用。
回复 使用道具 举报
黄希

1、if ,if...else,if...else if...else  三种if语句的区别
        if根据单个条件,执行满足条件的单个语句体;
        if...else根据单个条件,执行两个语句体中满足条件的那一个;
        if...else if...else支持多个条件判断,执行满足条件的那个语句体。

2、default 一定要放在最后么?  用自己的话来解释下case的穿透
        不一定。switch语句中的case与default的顺序可以颠倒。
        case穿透:匹配哪个case,就从那个case开始往下执行,直到遇到break或switch整体结束为止。

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?
        for循环与while循环根据条件判断是否满足,执行固定次数;do-while循环,至少执行一次。
        for循环的初始化变量一般定义在小括号中,只能在循环体内部使用;while循环和do-while循环的初始化变量在外部定义,循环结束后还可以继续使用。

回复 使用道具 举报
1、if ,if...else,if...else if...else  三种if语句的区别
i语句用在f用在只有单个判断条件以及单个判断条件以及单个执行语句的时候;
if...else语句用在只有两个判断条件以及两种不同执行语句的时候;
if...else if...else 语句用在有多个判断条件以及多种不同执行语句的时候。

2、default 一定要放在最后么?  用自己的话来解释下case的穿透
default不一定要放在最后,case的穿透指的是当case都和表达式的值匹配时,执行所在行case下的语句体且没有遇到break的时候不需要判断下一个case的值与表达式的值是否相等直接执行下一个case值对应的语句体,直到遇到break或者一整个的switch语句结束为止。

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?
三种循环语句的区别有:(1)for语句和while语句在判断条件不满足的情况下执行0次需要执行的语句,但是do...while语句则至少执行一次需要执行的语句;(2)for循环语句的循环变量在整个循环体内执行,超出循环体则失去意义;而while语句和do...while语句的循环变量从定义开始到后面的循环语句外的部分还可以继续使用。
当我们很明显可以知道循环体中循环变量的次数有限的情况下用for语句,反之则用while语句。
回复 使用道具 举报
卢林觉

1、if 语句针对只有一个条件判断(即只有一种情况)时使用;if...else针对有两个条件判断(即有两种情况)时使用;if...else if...else针对有多个条件判断(即有多种情况)时使用。

2、switch语句中default不一定要写在最后,但是需注意default写在最后可以省略break,写在语句中间则不可省略break。case语句会一直运行到遇到break或者语句末尾时才会停止,即上一个case语句在未遇到break时会运行下一个case语句的语句体,直到break或到末尾。

3、(1)do_while语句至少会运行一次,for、while则可能一次都不运行;
(2)for循环初始化是在循环语句内,do_while与while在循环体外。
当明确循环次数时使用for循环,不明确循环次数用while循环。但两者可相互替换。
回复 使用道具 举报
1:if一个判断后就直接结束if语句,if...else有两个判断后结束if语句(二者选其一),if...else if...else有N个判断后结束if语句(多者选其一)。



2.default:不一定  case的穿透在switch中 case 常量(常量肯定不能一样)后的程序多个一样的时候就可以用到case的穿透也能得到同样的结果,然后直到遇到break才结束。


3.(1)for,while,do...while区别:for的初始化表达式在小括号里面它的作用域也就是for里面,当然也可以把for循环的初始化表达式写在外面,但while和do...while的初始化表达式的作用域在循环外所以它们的作用域比较大,还有do...while的do里的语句肯定会执行一次。
  (2)当循环的次数比较明了的时候建议用for循环,当循环次数没有那么明了的时候建议用while循环
回复 使用道具 举报
1、if ,if...else,if...else if...else  三种if语句的区别。

if : 作为一个开关,如果if(表达式)表达式的值为true 。那么,会执行if后的一行代码,或者是{}内的代码块。

if ..else : 是要么执行if后面的语句,要么执行else的语句。

if...else if..else : 是if...else的一种嵌套。

2、default 一定要放在最后么?  用自己的话来解释下case的穿透。

default不是一定要放在最后。

穿透:case语句的作用是判读switch()小括号中的表达式的值,会从上至下寻找和case的值相等的值作为该程序的入口,如果说这个入口进入后没有遇到break语句,那么会运行剩下的case后面跟的语句,直到遇到break,或者整个switch代码运行结束。

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?
do..while和其他两种区别是:do..while至少会执行一次循环体。
while和for的区别是:while循环变量定义在前,for的循环变量定义在for内部,是个局部变量,该变量的生命周期会随着for循环的运行结束而结束。所以while循环变量的作用域会比for大。
另外还要注意while和for中使用continue和break的区别。
                int i=0;                                   |                      for(int j=0;j<10;j++){
                while(i<10){                           |                      if(j>3)
                if(i>3)                                    |                     continue;
                continue;                               |                     j++;
                 i++;                                      |                     }
                 }                                             |
while循环在使用continue时要小心,因为while的步进语句在循环体内,上述代码,当i被赋值为4时,i++就执行不到了,所以会出现死循环的现象。用for循环就可以解决该问题,因为for的步进语句在循环体外部。
-----------------------------------------------------------------------------------------------------------------------------
for循环语句是当循环次数明确时使用,while是循环次数不明确时使用。
回复 使用道具 举报
吴佳更
1.if语句就是看关系表达式为true或false,true就执行语句体,false则不执行。
if...else 就是看关系表达式为true或false,true就执行语句体1,else则执行语句体2。
if...else if...else 就是看哪个关系表达式为true就执行哪个下面的语句体,都false则执行else下面的语句体。
2.default不一定要放在最后,只要格式正确,放switch(){}内的开头都行。
case的穿透理解为如果常量符合,而没有break,就会一直向下执行,直到遇到break或者switch结束。
3.三种循环语句的差别在,1.当条件从没满足时,do while会执行一次,而for跟while不执行。
                                         2.for的变量的作用域只在for循环中,而另外两个的变量在循环外仍可以使用
在知道具体次数的时候使用for,在不知道具体次数的时候使用while
回复 使用道具 举报 1 0
1、if ,if...else,if...else if...else  三种if语句的区别
   if 用于一个条件判断,一种执行结果
   if...else 用于一个条件判断,两种执行结果
   if...else if ...else 用于两个及两个以上条件判断,多种执行结果。
   if是类似于 if...else 和 if...else if...else的简化。
   if...else 是类似于  if...else if...else的简化。
   if( ){}
   相当于
   if( ){
   
   }else{
        // 为空
   }
   相当于
   if( ){
   
   }else if(false){
        
   }else{
        // 为空
   }
   
2、default 一定要放在最后么?  用自己的话来解释下case的穿透
   不一定。
   switch结构,结束运行的条件是触发break或者是语句全部结束(执行到末尾“}”处),当一个case中没有break语句时,会继续向下一个case执行。这就叫做case的穿透

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?
区别:
   1. 在第一次的条件判断为false时,do while 是已经运行了一次循环体,而for和while是没有运行过的
   2. 在标准格式下:(for循环的初始化语句在循环内),for的循环变量作用域是只在循环内,while和do while的循环变量还作用在循环外。

什么时候用for语句和while语句:当已知循环次数时,使用for语句;未知时使用while语句。
回复 使用道具 举报
王宇晨
1、if ,if...else,if...else if...else  三种if语句的区别
if 只有一个判断条件,判断条件为true就执行语句体,为false就结束语句体。
if...else 判断条件为true就执行语句体,否则就执行另外一个语句体。一些简单的if...else语句可以和三元运算符相互转换。
if...else if...else 为多条件判断,if判断条件为true就执行语句体,否则如果满足另外一个条件,就执行其中的语句体,依次判断。else只能放在最后,不能随意放置。

2、default 一定要放在最后么?  用自己的话来解释下case的穿透
default不一定要放在最后。case穿透就是在执行语句时,只要没有遇到break,就一直向下运行,知道遇见break或者运行到switch语句的结束。

3、三种循环语句的区别?什么时候用for语句,什么时候while语句?
三种循环的区别:如果判断条件从未满足过,for和while将一次不会执行,而do...while至少会执行一次,for循环的变量定义在小括号内,只能在循环中使用,while,do...while的变量在循环外,循环之后还可以使用如果循环次数确定就用for循环语句,如果不确定就用while循环语句。
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马