黑马程序员技术交流社区

标题: 说来也怪,这个代码,怎么打印不出数据呢?菜鸟求解 [打印本页]

作者: 忄雾飞扬    时间: 2013-11-24 11:58
标题: 说来也怪,这个代码,怎么打印不出数据呢?菜鸟求解
  1. public class Test1 {
  2.         public static void main(String[] args) {
  3.                 for (double i = 2; i <1; i-=0.1) {
  4.                            System.out.println(i);
  5.                           }

  6.         }
  7. }
复制代码

作者: 徐君    时间: 2013-11-24 12:28
你这代码不可能会执行,因为定义的i=2  i<1才能执行i-0.1,
for(double i=2;i>1;i-=0.1){
    System.out.println(i);
  }

作者: 容嬷嬷当年也是    时间: 2013-11-24 14:34
显然 double i = 2; i <1; i-=0.1  这个定义是错误的。

只有  double i = 2; i >1; i-=0.1  时 程序才会被执行。

作者: 王雷1    时间: 2013-11-24 14:55
我没看明白你的i-是什么意思,但是前面的两个你写的就有问题,i在等于2的时候就不可能在小于1了只能大于一啊,所以无法打印
作者: 卢泽    时间: 2013-11-24 14:55
本帖最后由 卢泽 于 2013-11-24 14:58 编辑

这个循环:for (double i = 2; i <1; i-=0.1),中 i<1 是循环的一个条件,只有满足这个条件,这个循环里的内容才会被执行。你首先定义的 i=2,这个 i 明显大于1而不是小于1,所以,不会被执行。可以试着改成 像二楼所说的 i>1 试试!
作者: 忘记了    时间: 2013-11-24 15:39
  1. class Test{
  2.        
  3.         public static void main(String[] args) {
  4.                 for (double i = 2; i >1; i-=0.1) {
  5.                            System.out.println(i);
  6.                           }

  7.         }

  8. }
复制代码
试试这个,把你判断条件改了一下
作者: 潘际昌    时间: 2013-11-24 16:03
  1. public class Test1 {
  2.         public static void main(String[] args) {
  3.                 for (double i = 2; i >1; i-=0.1) {
  4.                            System.out.println(i);
  5.                           }

  6.         }
  7. }
复制代码
你这个程序里面的for循环的条件是错误的, for (double i = 2; i <1; i-=0.1)你这一开始循环,就不符合i<1,压根就不会执行for循环里面的执行语句。可以改成上面的代码试试。




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