java怎么获取for循环里的值

比如for(i=0;i<100;i++){}最终结果是i=99,问题是我怎么把这99在循环外面得到,因为i的作用域只是for循环

//按照你思路很明显无法得到99的,for内的i=99时,且将要结束FOR循环时i还要++所以结果会是100.参考ForTest1
//i的作用域只在for的话,只能把它赋值给另一个变量作用域超出FOR的才可以.参考ForTest2
public class ForTest1 {
int getFor() {
int i;
for (i = 0; i < 100; i++) {
}
return i;
}
public static void main(String[] args) {
ForTest1 t = new ForTest1();
System.out.println(t.getFor());
}
}

public class ForTest2 {
static int n;
void setFor() {
for (int i = 0; i < 100; i++) {
n = i;
}
}
int getFor(){
return n;
}
public static void main(String[] args) {
ForTest2 t = new ForTest2();
t.setFor();
System.out.println(t.getFor());
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-14
java的for循环和c的不一样吗,i作用域在for循环的话 就在循环里加个赋值变量啊,赋给能在外面用的变量
第2个回答  2013-04-13
这简单么,把int i = 0;放到循环外面
int i = 0 ;
for(;i<100;i++){}
在这得到i就可以了
第3个回答  2013-04-13
//方法一
int num = 0;
for(int i = 0; i < 100; i++){
num = i;
}
System.out.println(num);
//方法二
int i = 0;
for(i = 0; i < 100; i++){

}
System.out.println(i);

第4个回答  2013-04-13
你定义一个全局变量
int num= -1;
int i= 0;
for( int i=0;i<100;++i){
++num;
}
i=num;
System.out.println("i="+i);
相似回答