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;
}
希望这对您有所帮助。如果您需要进一步的说明或帮助,请发表评论。
我是 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;
}
希望这对您有所帮助。如果您需要进一步的说明或帮助,请发表评论。