我創建了一個 for 循環。我需要做什么才能打印出來:test0 test1 test2 test3 for (int i = 0; i < 4; i++) { int x = 0; System.out.println("test"+x); x++; }但它沒有打印出來:test0 test1 test2 test3它打印出:test0 test0 test0 test0
3 回答

陪伴而非守候
TA貢獻1757條經驗 獲得超8個贊
您需要將“x”更改為“i”,因為“i”是索引變量,每次迭代都會增加 1。"x" 是一個局部變量,并且始終為 0,因為您每次迭代都重新定義它。你可以這樣做:
for(int i = 0; i < 4; i++) {
int x = 0;
System.out.println("test" + i);
x++;
}
或這個:
int x = 0;
for(int i = 0; i < 4; i++) {
System.out.println("test" + x);
x++;
}

當年話下
TA貢獻1890條經驗 獲得超9個贊
您使用賦值運算符=為. 您的變量每次更新為0。所以它打印出來:test0 test0.....因為它在for循環內。0xx
如果變量x是在 for 循環之外聲明的,并且時間x沒有用 更新0,它只是用x=x+1均值++運算符更新。所以它會增加并完美地工作。還有一件事,這x是一個用于 for 循環的全局變量,可以在 for 循環內部訪問。請看下面的代碼。
int x = 0;
for (int i = 0; i < 4; i++) {
System.out.println("test"+x);
x++;
}
添加回答
舉報
0/150
提交
取消