定義了int=1 for括號里就不能定義int =1 了嗎
int sum = 0; // 保存不能被3整除的數(shù)之和 int i = 1; for (int i = 1; i<=100; i++) { if (i % 3 != 0) { sum = sum + i; // 累加求和 } } System.out.println("1到100之間不能被3整除的數(shù)之和為:" + sum); } } 定義了int=1 for 括號里面 就不能定義 int=1了嗎?
int sum = 0; // 保存不能被3整除的數(shù)之和 int i = 1; for (int i = 1; i<=100; i++) { if (i % 3 != 0) { sum = sum + i; // 累加求和 } } System.out.println("1到100之間不能被3整除的數(shù)之和為:" + sum); } } 定義了int=1 for 括號里面 就不能定義 int=1了嗎?
2016-05-19
舉報
2016-05-23
for(int i=1;i<100;i++){
}還可以寫成
int i=1;
for( ;i<100;i++){
}
當你定義了 int ?i=1; 然后又在 for(){}循環(huán)的括號里寫 一個 int i=1;的時候 ? 會報??定義了兩個同名變量錯誤。
Java變量是有作用域的。如果兩個作用域完全不同的變量同名,不會引起沖突。
我知道你想問什么,假如一個班 有兩個小明 那么點名的時候就會沖突 但是如果一班有個小明 二班有一個小明,分開班級點名就不會沖突。
如果一個函數(shù)中(最外層)定義了x,在函數(shù)中的另外一處也定義了x,或者說在函數(shù)的某個循環(huán)中定義了x,就會引起沖突。
如果在一個函數(shù)的一個循環(huán)A中定義了x,循環(huán)B中也定義了x,只要A,B不是相互包含的,那么也不會有沖突。
2016-05-19
不太明白你的問題,你是想問“如果在for循環(huán)外面定義了一個變量 ?int i =1;
那么在for循環(huán)里面還能不能再定義一個同名變量?int i =1 嗎?“
這種情況是不可以的,在同一類或方法中不能重復(fù)定義一個同名變量,想了解更多關(guān)于變量的,可以在后面的課程中看一下變量的生存期和作用域。
2016-05-19
兩個都是定義并初始化同一個變量i,這不是重復(fù)了嘛