黑马程序员技术交流社区

标题: 关于for与while互换的问题。 [打印本页]

作者: 陈昊    时间: 2013-6-10 08:43
标题: 关于for与while互换的问题。
本帖最后由 陈昊 于 2013-6-10 23:21 编辑

看视频时,老师说,需要定义循环增量,用for更为合适用,小弟愚笨。如果将用于控制循环的增量定义在for语句中,那么该变量只在for语句中有效。for语句执行完毕,该变量在内存中被释放。如果用while语句执行完毕,该变量在内存中保存。假如说后面的代码还是需要调用该变量呢?是不是用while更合适了。求解释。。。。
作者: liujkh123    时间: 2013-6-10 09:10
while和for的用法很不一样, for一定有一个循环增量的,while则不一定,while的循环用的是判断语句来控制循环与否
作者: liujkh123    时间: 2013-6-10 09:14
while和for的用法很不一样, for一定有一个循环增量的,while则不一定,while的循环用的是判断语句来控制循环与否,比如
while(判断语句){执行语句}   
只要判断语句成立,就一直循环,而这个判断语句很有可能在其它地方被改变,比方说两个线程中,一个线程改变了判断语句中的一个条件,另一个线程就不再循环了,至于有循环增量的循环语句,用for和while都一样,看你喜欢哪个了
作者: 逝者轨迹    时间: 2013-6-10 09:14
for(;;)限定了循环次数,通常用在循环次数确定的时候
while()是条件循环,如果while内部条件满足可以永远循环下去
do---while也是条件循环,只不过条件在循环之后,每次循环之后才判断条件
假如后面的代码还是需要调用该变量,可以把这个变量定义在循环外面
作者: 陈昊    时间: 2013-6-10 09:19
对哦,调用在前面就可以随时调用了,谢了
作者: 张俊生    时间: 2013-6-10 11:32
for和while语句都可以定义增量啊,只不过while语句中可以吧增量定义在执行语句中,for语句就必须有增量,while 的变量时定义在while外的,不会随while结束而结束。
例如
class   Demo
{
      public static void main(String[]  args)
      {
           int x  = 1;
      while(  x<3)
       {
               System.out.println("a");
              x++;
            }
      }
     
}
作者: shiweiCao    时间: 2013-6-10 12:40
知道循环次数的时候for和while都可以用,比如
for(int i=0;i<100;i++)
{......}
就可以写成int i=0;
while(i<100){i++;},
不知道循环次数只能用while,如while(x>0)
{......}


四种循环都可以用来处理同一个问题,一般可以互相代替。但一般不提倡用goto型循环。
while和do-while循环,循环体中应包括使循环趋于结束的语句。for语句功能最强。
用while和do-while循环时,循环变量初始化的操作应在while和do-while语句之前完成,而for语句可以在表达式1中实现循环变量的初始化

黑马云青年




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2