为了账号安全,请及时绑定邮箱和手机立即绑定

定义了int=1 for括号里就不能定义int =1 了吗

int sum = 0; // 保存不能被3整除的数之和 int i = 1; for (int i = 1; i<=100; i++) { if (i % 3 != 0) { sum = sum + i; // 累加求和 } } System.out.println("1到100之间不能被3整除的数之和为:" + sum); } } 定义了int=1 for 括号里面 就不能定义 int=1了吗?

正在回答

3 回答

for(int i=1;i<100;i++){

}还可以写成

int i=1;

for( ;i<100;i++){

}

当你定义了 int  i=1; 然后又在 for(){}循环的括号里写 一个 int i=1;的时候   会报  定义了两个同名变量错误。

Java变量是有作用域的。如果两个作用域完全不同的变量同名,不会引起冲突。

我知道你想问什么,假如一个班 有两个小明 那么点名的时候就会冲突 但是如果一班有个小明 二班有一个小明,分开班级点名就不会冲突。


如果一个函数中(最外层)定义了x,在函数中的另外一处也定义了x,或者说在函数的某个循环中定义了x,就会引起冲突。

如果在一个函数的一个循环A中定义了x,循环B中也定义了x,只要A,B不是相互包含的,那么也不会有冲突。

0 回复 有任何疑惑可以回复我~

不太明白你的问题,你是想问“如果在for循环外面定义了一个变量  int i =1;

那么在for循环里面还能不能再定义一个同名变量 int i =1 吗?“

这种情况是不可以的,在同一类或方法中不能重复定义一个同名变量,想了解更多关于变量的,可以在后面的课程中看一下变量的生存期和作用域。

0 回复 有任何疑惑可以回复我~

两个都是定义并初始化同一个变量i,这不是重复了嘛

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

定义了int=1 for括号里就不能定义int =1 了吗

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信