Java 在另一个方法中调用变量

Java calling variable in another method

我是 Java 编程的新手,我只是有一个简单的问题,但我做不到,因为我不知道如何在 Java 上写它。提前致谢。

我想在另一个方法中调用变量值。

public static void ReadIN() throws Exception{
        BufferedReader br = new BufferedReader(new FileReader("test.txt"));
        String line = null;

        while ((line = br.readLine()) != null) {
          String[] values = line.split(","); // want to be call
          for (String inputIN : values) {
          inputIN = values[2];
          }
        }


        br.close(); 
      }


      public static void checkStatus() {

        // call variable 'values' here

      }

不确定您到底需要什么。无论如何试试这个:

public static void readIN() throws Exception{
    BufferedReader br = new BufferedReader(new FileReader("test.txt"));
    String line = null;

    while ((line = br.readLine()) != null) {
        String[] values = line.split(","); // want to be call
        for (String inputIN : values) {
            inputIN = values[2];
        }
        checkStatus(values);
    }
    br.close(); 
}


public static void checkStatus(String[] values) {
    // call variable 'values' here
    System.out.println(values);
}

顺便说一句,遵循命名约定。

编辑:下面的代码应该编译成功,在 Test.java

import java.io.*;

public class Test
{
    public static void main(String[] args) throws Exception {
        Test.readIN();
    }

    public static void readIN() throws Exception {
        BufferedReader br = new BufferedReader(new FileReader("test.txt"));
        String line = null;    
        while ((line = br.readLine()) != null) {
            String[] values = line.split(",");
            Test.checkStatus(values);
        }
        br.close(); 
    }


    public static void checkStatus(String[] values) {
        // call variable 'values' here
        System.out.println(values);
    }
}

您不能在拥有它们的方法之外访问方法变量。如果变量直接属于一个class,变量可以通过其他方法访问

你不能那样调用变量。您可以做的一种方法是全局声明变量值(在您的 main 或任何其他函数之外,并且在您的包和导入下方的顶部)。这样所有其他函数将能够使用变量值。另一种方法是从 main 发送变量值调用 checkStatus 函数。下面的例子

在主函数中:

checkStatus(values);

调用传递变量值的函数 checkStatus。 JAVA 是一种严格的按值传递的语言。发生的事情是函数 checkStatus 被调用,并且使用相同的值创建变量值的副本并将其传递给函数。

函数:

public static void checkStatus(String[] values) 
{
    // call variable 'values' here
    // Here you can make use of the variable values
}

如果您计划修改函数 checkStatus 中的变量值并希望它在 main 中一起修改,那么您可以像这样 return 将值返回到 main。

主要

String[] receive;
receive = checkStatus(values);

在函数中:

public static String checkStatus(String[] values) 
{
     //Once you are done with your codes
     return values;
}

希望这对您有所帮助。如果您需要进一步的说明或帮助,请发表评论。