Java 学习之路(十五)- 代码块和变量的作用域

大括号括起来的就是代码块

  • 代码块的示例
  • 有名字的代码块:if-else 代码块,for 循环代码块,main方法代码块
  • 代码块也叫体,比如:for循环体,main方法体
  • 代码块可以嵌套
  • 代码块内部可以使用外部变量
public static void main(String[] args) {
    
    
    int outer = 100;

    {
    
    
        int inner = 10;
        // outer变量的值是100。inner变量的值是10。
        System.out.println("outer变量的值是" + outer + "。inner变量的值是" + inner + "。");
    }

    int a1 = 1;
    {
    
    
        int a2 = a1 + 1;
        {
    
    
            int a3 = a2 + 1;
        }
        {
    
    
            int a3 = a2 + 10;
        }
        // 2
        System.out.println(a2);
    }
}

变量的作用域

代码块里创建和使用变量

  • 代码块里使用外层代码块的变量
  • 代码块里创建变量
  • 不能在外层代码块里使用内层代码块的变量。是否可以使用变量,也称作变量在某个代码块的可见性。也就是说,外层代码块创建的变量对内层代码块可见。内层代码块中创建的变量对外层代码块不可见。
  • 内层命名空闻不可以重复定义外层代码块的变量,但是可以使用外层代码块的变量
  • 代码块无论嵌套多少层,都遵守上述变量可见性的

理解作用域和命名空间

作用域和命名空间

  • 同一个命名空间中的变量不可以重名
  • 为了避免变量名冲突,所以必须有命名空间

for 循环嵌套

计算乘法表

  • 两个数相乘,外层循环代表乘数,内层是被乘数
  • 循环嵌套,变量名不可以重复
  • 使用 break 语句让输出的乘法表更简洁
  • 使用字符串变量,做字符串的加法
for (int i = 1; i <= 9; i++) {
    
    
    String line = "";
    for (int j = 1; j <= 9; j++) {
    
    
        if (i < j) {
    
    
            break;
        }
        line = line + j + "*" + i + "=" + (j * i) + "\t";
    }
    System.out.println(line);
}

猜你喜欢

转载自blog.csdn.net/Kevinblant/article/details/119719588