日期:2014-05-18  浏览次数:20877 次

for循环括号中神奇的内容
for(f.show('A'); f.show('B')&&(i<2);f.show('C'))  这是啥东西,求解答,百度都不晓得百度什么去
写出程序结果	
class Fu
{
boolean show(char a)
{
System.out.println(a);
return true;
}
}
class Demo extends Fu
{
public static void main(String[] args)
{
int i=0;
Fu f=new Demo();
Demo d=new Demo();
for(f.show('A'); f.show('B')&&(i<2);f.show('C'))
{
i++;
d.show('D');
}
}
boolean show(char a)
{
System.out.println(a);
return false;
}
}

------解决方案--------------------
1、继承时,子类重写父类方法,子类对象调用是子类自己的重写方法

2、for(expression1;expression2;expression3){
code;
}
expression1:执行一次
expression2:循环执行
expression3:循环执行
code:循环执行
------解决方案--------------------
关于for(a,b,c)(其中a,b,c均为表达式)循环,
其执行的顺序是:
先执行a,然后执行b,若b执行结果为false,则直接终止执行后面的代码,所以程序输出为
A
B,
若b执行的结果为true,则执行for循环体内的代码,执行完毕之后执行c。
然后为b--->循环体--->c--->b--->循环体--->c--->b--->循环体--->c........
直到b为false终止。