Java中,在同一个类里的不同的for循环中,是否可以使用相同的变量名称?(循环变量除外)
6个回答
展开全部
楼主。。。其实不用循环变量除外。因为都是一样的
平常不允许声明 两个一样的变量,是因为如果有两个一样的变量出现的时候,比如你输出他的信息,电脑不知道要调用哪个变量。
在if,for,while等结构中声明的变量,是局部变量。出了这个循环体就会销毁了。所以不会有冲突
比如
for(int i=0;i<5;i++){
int a=5;
}//出了这个地方a就销毁
for(int j=0;j<5;j++){
int a=6;//这是一个新的变量
}//出了循环一样会销毁
当然如果结构之外有这个变量,你就不能再用了,比如
int a=5;
for(int i=0;i<5;i++){
int a=10;
Systme.out.println(a);
}
这是就是我说的,现在电脑也不知道到底要调哪个值了。
当然对于类和方法。那就是另一个概念了
比如
public class A{
int a=5;
public void show(){
int a=10;
System.out.println(a);//此时输出10
System.out.println(this.a);//此时输出5
}
这个例子希望楼主看得懂,看不懂的话,等你学完方法和类的时候再说。。。。这个貌似对你有点超纲
}
平常不允许声明 两个一样的变量,是因为如果有两个一样的变量出现的时候,比如你输出他的信息,电脑不知道要调用哪个变量。
在if,for,while等结构中声明的变量,是局部变量。出了这个循环体就会销毁了。所以不会有冲突
比如
for(int i=0;i<5;i++){
int a=5;
}//出了这个地方a就销毁
for(int j=0;j<5;j++){
int a=6;//这是一个新的变量
}//出了循环一样会销毁
当然如果结构之外有这个变量,你就不能再用了,比如
int a=5;
for(int i=0;i<5;i++){
int a=10;
Systme.out.println(a);
}
这是就是我说的,现在电脑也不知道到底要调哪个值了。
当然对于类和方法。那就是另一个概念了
比如
public class A{
int a=5;
public void show(){
int a=10;
System.out.println(a);//此时输出10
System.out.println(this.a);//此时输出5
}
这个例子希望楼主看得懂,看不懂的话,等你学完方法和类的时候再说。。。。这个貌似对你有点超纲
}
展开全部
只要这个变量不是静态(static)的就可以。
因为在循环内部声明的变量,在循环外部是无法识别的。
所以用同一个名字的变量扔到不同循环中是没有问题的。
因为在循环内部声明的变量,在循环外部是无法识别的。
所以用同一个名字的变量扔到不同循环中是没有问题的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以的,局部变量是互不影响的,for循环里定义的变量是局部变量
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以,如下程序是可以的:
public static void main(String []arg){
for(int i=1,int j=0;i<10;i++){
j+=i;
System.out.println("j = "+j);
}
for(int i=1,int j=1;i<5;i++){
j*=i;
System.out.println("j = "+j);
}
}
public static void main(String []arg){
for(int i=1,int j=0;i<10;i++){
j+=i;
System.out.println("j = "+j);
}
for(int i=1,int j=1;i<5;i++){
j*=i;
System.out.println("j = "+j);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果你定义的是全局变量则不可以,如楼上代码所示,是局部变量是可以的!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询