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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 小乎乎 中级黑马   /  2015-6-11 00:28  /  1932 人查看  /  41 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

while和for的区别中:明确循环次数最好用for........理解无能,能举个例子(代码)体现一下那种情况麽

41 个回复

倒序浏览
比如说你知道你要打印几次  hello world .你就用for,,如果你不知道你要打印几次,你就用while
回复 使用道具 举报
e........太抽象,可否告诉我那啥不明确次数的条件改变语句为何,它为啥不能放for里.........俺要个代码的体现
回复 使用道具 举报
while 和for 可以完全替换的,只是相对用谁更合适 。
回复 使用道具 举报
时光匆匆 发表于 2015-6-11 00:43
while 和for 可以完全替换的,只是相对用谁更合适 。

are you sure?我读书少,表骗我喔:o
回复 使用道具 举报
小乎乎 发表于 2015-6-11 00:46
are you sure?我读书少,表骗我喔

哪能够啊
回复 使用道具 举报
悦鹏 中级黑马 2015-6-11 00:55:32
7#
a:for循环语句和while循环语句可以等价转换,但还是有些小区别的。
           
         b:使用区别:
         
           控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,

           而while循环结束还可以继续使用,如果你想继续使用,就用while,否则推荐使用for。

           原因是for循环结束,该变量就从内存中消失,能够提高内存的使用效率。
   
         c:场景区别:

           for循环适合针对一个范围判断进行操作

           while循环适合判断次数不明确操作
回复 使用道具 举报 1 0
悦鹏 发表于 2015-6-11 00:55
a:for循环语句和while循环语句可以等价转换,但还是有些小区别的。
           
         b:使用区别:

总结得好好阿!!!道理我都懂了,其实我就是想知道次数不明确的代码怎么体现的
回复 使用道具 举报
悦鹏 发表于 2015-6-11 00:55
a:for循环语句和while循环语句可以等价转换,但还是有些小区别的。
           
         b:使用区别:

大神啊,这么详细!
回复 使用道具 举报
赞赞赞,每天给自己一个大大滴微笑
回复 使用道具 举报
我觉得吧 其实都是一样的   都是可以互相转换的   能使用for的地方 也一样能使用while 需要循环变量参与的一般都用for  反之一般用while
回复 使用道具 举报
。。。过来学习
回复 使用道具 举报
java中的循环主要有:for循环,while,do while三种。

首先说一下for循环,for循环 多用于在知道循环次数的情况下使用,比如上面的代码中用for循环来输出二维数组中的每一个元素,因为我们已经知道了每次循环的长度。
下面通过一个简单的打印九九乘法表的例子来看一下for循环的使用:

package itheiomatest;

public class test {

    public static void main(String[] args) {
        //首先我们先分析一下需求
        //1*1=1
        //1*2=2 2*2=4;......
        //因为乘法表有九行,所以我们循环的次数也就为九次,首先我们先定义一个int i;来控制外层循环的次数。
        for(int i=1;i<=9;i++)
        {
            //然后定义一个变量j来控制每一个行要乘几次,乘的次数应该是要小于等于每次循环的行数
            for(int j=1;j<=i;j++)
            {
                System.out.print(i+"x"+j+"="+i*j+" ");
            }
            System.out.println();

        }


    }

}

while,和do while的区别:

package itheiomatest;

public class test {

    public static void main(String[] args) {


        int i=1;
        while(i==0){
            System.out.println("执行了,我是while循环");
            i++;
        }

        int j=1;
        do{
            /**/
            System.out.println("执行了,我是do while循环");
        j++;
        }while(j==0);
    }

}
当执行完上面的代码以后,我们可以看出:while当条件语句成立时才执行大括号里面的代码,而do while 是先执行性大括号里面的代码,然后再进行判断条件语句。也就是说不管条件是不是成立do while这种循环至少会执行一次大括号里面的代码。
for循环主要是用于知道要循环的次数。


copy至我的博客
回复 使用道具 举报
有一个明显的区别就是在解锁的时候,如果判断后等待了,下次开始,用for不会在判断,用while
则会再判断
回复 使用道具 举报
其实没什么大的区别,可以互相转换的。
回复 使用道具 举报
Nemo 中级黑马 2015-6-12 09:57:07
16#
因为使用while,循环次数变量要定义在循环外,这个变量其实只用于循环而已,也就是说循环完了就该释放了的,使用for可以定义在for语句中,for循环一结束,该变量释放
回复 使用道具 举报
悦鹏 发表于 2015-6-11 00:55
a:for循环语句和while循环语句可以等价转换,但还是有些小区别的。
           
         b:使用区别:

  牛  赞一个   哈哈
回复 使用道具 举报
while  也有两种方式! 你说的是哪一种
回复 使用道具 举报
for和while基本上是一样的,有些小区别,见如下代码(个人理解,如果发现误区,请大神指点!)
  1. public class Test003 {

  2.         public static void main(String[] args) {
  3.                 int i;
  4.                 //for循环
  5.                 for(i=0;i<10;i++){
  6.                         System.out.print("i="+i+",");
  7.                 }
  8.                 System.out.println("i="+i+".");
  9.                 //while循环之先输出i,再i++
  10.                 i=0;
  11.                 while(i<10){                       
  12.                         System.out.print("i="+i+",");
  13.                         i++;
  14.                 }
  15.                 System.out.println("i="+i+".");
  16.                 //while循环之先i++,再输出i。
  17.                 i=0;
  18.                 while(i<10){       
  19.                         i++;
  20.                         System.out.print("i="+i+",");
  21.                 }
  22.                 System.out.println("i="+i+".");
  23.         }
  24. }
复制代码
回复 使用道具 举报
可以相互转化的,while一般用于不明确循环次数
回复 使用道具 举报
123下一页
您需要登录后才可以回帖 登录 | 加入黑马