Java 如何在另一个函数中定义的函数中使用变量?

Java 如何在另一个函数中定义的函数中使用变量?,java,function,variables,Java,Function,Variables,我写了以下课程: public class Hello { public static void showMoney(){ System.out.println("Money: " + money); } public static void main(String[] args){ int money = 1000; showMoney(); } } 我想用showMoney()函数查看我的钱,但是showMoney()

我写了以下课程:

public class Hello {

   public static void showMoney(){
       System.out.println("Money: " + money);
   }


   public static void main(String[] args){
       int money = 1000;
       showMoney();
   }
}
我想用
showMoney()
函数查看我的钱,但是
showMoney()
函数无法识别main方法中的my money变量。有什么方法可以做得好吗

多谢各位


很抱歉提出这个愚蠢的问题,因为我是编程新手。

在这种情况下,最合适的方法是将数据作为参数传入:

// Have this method accept the data as a parameter
public static void showMoney(int passedMoney){
    System.out.println("Money: " + passedMoney);
}


public static void main(String[] args){
    int money = 1000;

    // Then pass it in here as an argument to the method
    showMoney(money);
}

此场景中最合适的方法是将数据作为参数传入:

// Have this method accept the data as a parameter
public static void showMoney(int passedMoney){
    System.out.println("Money: " + passedMoney);
}


public static void main(String[] args){
    int money = 1000;

    // Then pass it in here as an argument to the method
    showMoney(money);
}

有很多方法可以做到这一点。 第一种可能也是最好的方法是将money参数传递给函数,如下所示:

public class Hello {

   public static void showMoney(int money){
       System.out.println("Money: " + money);
   }


   public static void main(String[] args){
       int money = 1000;
       showMoney(money);
   }
}
public class Hello {
   private static int money;
   public static void showMoney(){
       System.out.println("Money: " + money);
   }


   public static void main(String[] args){
       money = 1000;
       showMoney();
   }
}
另一种方法是将money变量声明为静态字段,如下所示:

public class Hello {

   public static void showMoney(int money){
       System.out.println("Money: " + money);
   }


   public static void main(String[] args){
       int money = 1000;
       showMoney(money);
   }
}
public class Hello {
   private static int money;
   public static void showMoney(){
       System.out.println("Money: " + money);
   }


   public static void main(String[] args){
       money = 1000;
       showMoney();
   }
}

有很多方法可以做到这一点。 第一种可能也是最好的方法是将money参数传递给函数,如下所示:

public class Hello {

   public static void showMoney(int money){
       System.out.println("Money: " + money);
   }


   public static void main(String[] args){
       int money = 1000;
       showMoney(money);
   }
}
public class Hello {
   private static int money;
   public static void showMoney(){
       System.out.println("Money: " + money);
   }


   public static void main(String[] args){
       money = 1000;
       showMoney();
   }
}
另一种方法是将money变量声明为静态字段,如下所示:

public class Hello {

   public static void showMoney(int money){
       System.out.println("Money: " + money);
   }


   public static void main(String[] args){
       int money = 1000;
       showMoney(money);
   }
}
public class Hello {
   private static int money;
   public static void showMoney(){
       System.out.println("Money: " + money);
   }


   public static void main(String[] args){
       money = 1000;
       showMoney();
   }
}

您可以将
money
作为参数传递给
showMoney
。变量的作用域是程序中可访问变量的部分。在您的示例中,只有在main方法中才能访问money。货币的范围是主体方法。您不能在其他地方访问它。您可以将
money
作为参数传递给
showMoney
。变量的作用域是程序中可访问变量的部分。在您的示例中,只有在main方法中才能访问money。货币的范围是主体方法。您无法在其他地方访问它。