关于变量名冲突的问题,两个i,一个定义在for循环里面,一个定义在for循环外面。懂的大神,进来帮忙指点一下。

来源:4-11 Java循环跳转语句之 break

忆_卿

2020-08-18 22:43

第一段代码:

public static void main(String[] args) {

          int i=0;   //这里定义了i
         for(int i=0;i<=10;i++) {    //这里也有一个,系统提示,命名重复,请修改
          System.out.println(i);
         }
         }

第一段代码有两个i。一个在for外面,一个在for里面,系统提示命名冲突。


 第二段代码:


public static void main(String[] args) {

         for(int i=0;i<=10;i++) {
          System.out.println(i);
         }
         for(int i=1;1<=10;i++) {
        
          System.out.println("当前累加值为:"+sum);
          }
         }

第二段代码有两个并列的for循环,都有一个变量i,但是两个不会命名冲突。


为什么第一段代码 i名字会冲突,第二段代码i名字不冲突?

写回答 关注

3回答

  • 慕用6596319
    2020-08-19 23:25:35
    已采纳

    第二段两个i是独立的,只在他们的循环体生效....

  • 小王子WL
    2020-09-22 10:09:29

    第二段的第一个循环i执行完循环会删除i的变量所以不会影响第二个循环定义变量i

    第一段的变量i不是循环体里定义的变量不会自动删除

  • 忆_卿
    2020-08-19 23:53:33

    那第一段代码 i 名字会冲突的原因是什么?

    qq_慕哥0...

    你定义了两个变量但是没有设置两个条件

    2022-07-06 16:55:59

    共 1 条回复 >

Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1167018 学习 · 17593 问题

查看课程

相似问题