Java 输出变量作用域问题

标签 java variables scope

我在以下代码段中遇到有关变量范围的问题。有人可以快速概述一下为什么 java 在打印时“找不到输出符号”吗?谢谢。

class Main
{
    public static void main(String[] args) {
        String text = "hello";
        if (text.indexOf(" ") == -1) //if a space doesn't exist
        {
            String output = "one word";
        }
        else
        {
            String output = "more than one word";
        }
        System.out.println(output);
    }
}

最佳答案

变量output存在于包含代码块中,该代码块当前似乎位于if block 和else<中 block ,如果要访问 ifelse block 之外的变量 output,则需要在之前定义它if block 。

关于Java 输出变量作用域问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43712053/

相关文章:

Java swing JTable RowFilter 忽略符号

java - 游戏开发 - 抽象技能/天赋系统实现

c++ - 被调用方返回对象的范围 w.r.t.调用者局部变量?

JavaScript 内部函数 & 'this'

Javascript 函数作用域与对象作用域

java - 不改变 boolean 值

java - 什么是NullPointerException,我该如何解决?

c - 结构数组和使用指向函数的指针变量

java - 如何在循环中存储用户的先前值?

mysql - 如何在 shell 脚本文件的 MySQL 查询中嵌入 BASH 变量