public class Test{
static boolean foo(char c){
System.out.print(c);
return true;
}
public static void main(String[] argv){
int i=0; for(foo('A');foo('B')&&(i<2);foo('C')){
i++;
foo('D');
}
}
}
请问输出结果是什么?并帮忙分析一下原因,小弟实在没搞明白
static boolean foo(char c){
System.out.print(c);
return true;
}
public static void main(String[] argv){
int i=0; for(foo('A');foo('B')&&(i<2);foo('C')){
i++;
foo('D');
}
}
}
请问输出结果是什么?并帮忙分析一下原因,小弟实在没搞明白
初始值:foo('A');输出A
条件:foo('B')&&(i<2);输出B
满足:foo('D'); 输出D
foo('C')) 输出C
继续判断条件:输出B....
这和for(int i=0;i<10;i++){
System.out.print(..);
}不一样吗~
第二次BDC //foo('A')不再运行初始值
第三次B i==2,不符合条件,跳出循环
B
D
CB
D
CB
#######
TO 2楼的:
这个题目没有到贱的地步吧?
就是考你for语句执行顺序 最后一次循环虽然条件不成立但还会输出一个B