您的位置:首页 > 编程语言 > Java开发

最普通的java for循环

2016-07-27 10:59 246 查看
我确实没有想到,会栽倒在这里,好吧,其实是根本没有想到这里来,今天心血来潮,想刷刷算法,第一个挺简单,但是结果出来却和预期不一样。

是这么回事,平时写for循环的时候是这样子的:

int arrray[]=new int[]{1,2,3};
for(int i=0;i<array.length;i++)
for(int j=0;j<array.length;j++){
if(i!=j)
System.out.println(" "+i+" "+j);
}


可是某一瞬间让猪油蒙了心,我写成这样的:

for(int i=0;i<array.length;i++)
for(int j=0;j<array.length&&i!=j;j++)
System.out.println(" "+i+" "+j);
看着区别不大,然而前者的输出是这样的:

0 0

0 1

0 2

1 0

1 1

1 2

2 0

2 1

2 2

后者是这样的:


1 0

2 0

2 1

后者每当i=j之后,是不会不会不会继续继续继续往后执行的!

嗯,检查的时候我以为我的循环写的是对的,所以在输出看看的时候,我是很不屑的,这怎么会错!!后来?!后来就实力打脸了


我突然好像记起来,以前出现过这种问题,结果正确就没有多想(只是顺序i,j反了)现在看来,很有问题!果然细节是不容忽视的~~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: