int[] a={1,2,3,4,5}for(int count = 0; count<5;count++){
    System.out.print(a[count++]);
}
这个程序的输出结果是135,我想问一下在循环中count++的值是怎么赋的啊

解决方案 »

  1.   

    System.out.print(a[0]); 
    System.out.print(a[2]); 
    System.out.print(a[4]); 使用后再自加
      

  2.   

    count先传给a做下标,再加一,++count相反。
      

  3.   

    public class Count {
    public static void main(String[] args) {
    int[] a={1,2,3,4,5}; for(int count = 0; count <5;count++){ 
        System.out.print(a[count++] + " "); 

    }
    }
      

  4.   

    每运行完循环体就立即执行count++,相当于count=count+1;
      

  5.   

    count++的问题,先加和后加有很大区别
      

  6.   

    count++ 在作为单独的语句使用时没什么,但在结合别的语句比如str[count++]或str[++count]时先加再用和先用再加的区别很大,建议自己写些简单的代码测试测试~
      

  7.   

    打印语句每次输出之后 数组下标count=count+1,然后for循环中的count=count+1;
      

  8.   

    肯定是135啊,你每次循环count加了两次啊
      

  9.   

    和count先后没关系.你for里加了一次.然后count++又加了一次
      

  10.   

    for(int count = 0; count <5;count++){ 
        System.out.print(a[count++]); 
    } //第一次count =0,打印a[0],然后 count+1,循环中又count+1,这时count = 2,打印a[2]...
      

  11.   

    提醒过很多人了,不要这样用++。你完全可以抛弃++这个操作符,因为其唯一确定的是为变量自增1,但是何时自增完全没有规范来约束。因此在这里是这种表现,换个jvm可能就是其他的表现。
      

  12.   

    首先判断count值是否少于5,如果是,则count++,你要把输出那里的count++看成a,即,判断时就判断a是否少于5,如少于则a++。
      

  13.   


    public static void main(java.lang.String[] args);
         0  iconst_5
         1  newarray int [10]
         3  dup
         4  iconst_0
         5  iconst_1
         6  iastore
         7  dup
         8  iconst_1
         9  iconst_2
        10  iastore
        11  dup
        12  iconst_2
        13  iconst_3
        14  iastore
        15  dup
        16  iconst_3
        17  iconst_4
        18  iastore
        19  dup
        20  iconst_4
        21  iconst_5
        22  iastore
        23  astore_1 [a]
        24  iconst_0
        25  istore_2 [count]
        26  goto 44
        29  getstatic java.lang.System.out : java.io.PrintStream [16]
        32  aload_1 [a]
        33  iload_2 [count]
        34  iinc 2 1 [count]
        37  iaload
        38  invokevirtual java.io.PrintStream.print(int) : void [22]
        41  iinc 2 1 [count]
        44  iload_2 [count]
        45  iconst_5
        46  if_icmplt 29
        49  return
      

  14.   

     System.out.print(a[count++]); 
    在输出的时候先执行count++,在输出;然后在执行循环的时候再count++
    for(int count = 0; count <5;count++){ 
    } 例子:
    int a=3;
    int b=4;
    System.out.print((a+b)>10?100:200); 
    其实在运行的时候直接判断的是7>10 不?
      

  15.   

    怎么总有人找一些非常奇怪的自编问题,这种问题在编程时会遇到?你不会再循环中写上count+=2不就是你想加2的解决方案吗,总是想把问题复杂化
      

  16.   

    y=count++ 
    第一次执行 count=0  输出 a[0]=1   y=1 条件中count再+1  -->count=2
    第二次执行 count=2  输出 a[2]=3   y=3 条件中count再+1  -->count=4
    第三次执行 count=4  输出 a[4]=5   y=5 条件中count再+1  -->count=6 for循环结束
      

  17.   

    y=count++ 
    第一次执行 count=0  输出 a[0]=1  y=1 条件中count再+1  -->count=2 
    第二次执行 count=2  输出 a[2]=3  y=3 条件中count再+1  -->count=4 
    第三次执行 count=4  输出 a[4]=5  y=5 条件中count再+1  -->count=6 for循环结束 
      

  18.   

    我靠,我还琢磨呢,怎么能出现135呢,后来才想起来是'1''3''5'这个就是先输出count的值,然后执行++就是+1了,你相当于执行2次嘛
      

  19.   

    int[] a={1,2,3,4,5} for(int count = 0; count <5;count++){ 
        System.out.print(a[count]); 
    count++;
    }
    和这同理。
      

  20.   

    每运行完循环体就立即执行count++,相当于count=count+1; 
     
     打印的是 024 的下标