☆星云╭⌒╮的专栏

一点一滴,滴水成海,积沙成塔

有关inspect/watch的一个疑问

当代码中出现i++,然后我用inspect 监测或者watch到expression中后,就会发现i++被当作程序中的代码执行了;

也就是说i开始如果为0的话,则程序执行了多少次,i+1就执行了多少次,此时i值就变了!

eg:

package charpter06;

public class Testi {

 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
           int i1=0,i2=0,i3=0,i4=0,i5=0,i6=0,i7=0,i8=0,i9=0,i10=0,i11,i12=0;
           int k2,k5,k9,k10;
           for(int j=0;j<5;j++){
/* 
*    int i = 0;
i=i++;
这个效果如下:
int temp = i++;//this : temp = 0; i =1(that's:i+1);
i = temp;//this: i =0;
因此: i=i++; 相当于什么都没有做,在有的IDE里,它会告诉你这个代码是废代码!   */ 
            i1 =i1++;// * means:int temp= i1; i1=i1+1;i1=temp;
            k2 =i2++; //means: int k2 =i2;i2=i2+1;
            i3++;//means: int temp = i3; i3 = i3 +1;
            ++i4;//means:i4 = i4+1; int temp = i4;
            k5 =++i5;//means:i5=i5+1; int k5= i5
            i6--;//means:int temp=i6;i6=i6-1;
            --i7;//means:i7=i7-1;int temp =i7;
            i8=i8--;// * means:int temp=i8;i8=i8-1;i8=temp
            k9=i9--;//means:int k9=i9;i9=i9-1;
            k10=--i10;//means: i10=i10-1; int k10=i10;
           
            System.out.println(" j = "+j);
            System.out.println("  i1="+i1);
            System.out.println("     i3 ="+i3);
            System.out.println("       i4 ="+i4);
            System.out.println("         i2 ="+i2+"  k2="+k2);
            System.out.println("          i5 ="+i5+"  k5="+k5);
            System.out.println("           i6 ="+i6+"  i7="+i7);
            System.out.println("             i8 ="+i8);
            System.out.println("              i9 ="+i9+"  k9="+k9);
            System.out.println("                i10 ="+i10+"  k10="+k10);
           }
           
 }
 

}

阅读更多
文章标签: string class ide
上一篇关于i++;++i;以及i=i++
下一篇Java试题收集1
想对作者说点什么? 我来说一句

MySpaceApk

2017年09月07日 33.13MB 下载

Inspect 自动化测试辅助工具

2018年05月25日 297KB 下载

没有更多推荐了,返回首页

关闭
关闭