读书人

java for循环有关问题

发布时间: 2012-09-16 17:33:16 作者: rapoo

java for循环问题
java大虾求帮忙,帮忙看看这个程序的for循环结构的具体执行思路?
public class O1_2_14 {

public O1_2_14() {
}


}

class FooDemo{
static boolean foo(char c) {
System.out.print(c);
return true;
}
public static void main(String[] args ) {
int i =0;
for ( foo('a'); foo('b')&&(i<2); foo('c')){
i++ ;
foo('d');
}
}
}


[解决办法]
for (1;2;3) {
4
}

整个结构就是:
1 -> 2 -> (4 -> 3 -> 2)*

终止条件就是 2

因为你的例子里面,2 是:foo('b')&&(i<2)
而foo()函数永远返回 true,所以实际上唯一终止循环的条件就是 (i<2) 不成立。
[解决办法]
关键点在

static boolean foo(char c) {
System.out.print(c);
return true;
}
public static void main(String[] args ) {
int i =0;
for ( foo('a'); foo('b')&&(i<2); foo('c')){
i++ ;
foo('d');
}

把‘a',’b‘,’c'带进
这个函数
static boolean foo(char c) {
System.out.print(c);
return true;
}

然后i初始值为0;每次循环都i++;
就行了

读书人网 >J2SE开发

热点推荐