如何在Java中将Int从一种方法返回到另一种方法

时间:2018-11-08 13:41:33

标签: java

public static void main(){
  getNumber();
  printNumber();
  int x;
}

public static int getNumber(){
  int x = 5;
  return(x);
}

public static void printNumber(){

  System.out.println(x);
}

我是一个初学者,很抱歉提出这样一个简单的问题。上面的代码片段是我尝试过的。

3 个答案:

答案 0 :(得分:1)

public class Test {

    public static void main(String[] args) {
        int x = getNumber();
        printNumber(x);
    }

    public static int getNumber() {
        int x = 5;
        return x;
    }

    public static void printNumber(int x) {
        System.out.println(x);
    }
}

答案 1 :(得分:0)

首先:

public static int getNumber(){
  int x = 5;
  return(x);
}

创建另一个局部变量x。因此,该分配仅影响“属于” x的{​​{1}}。封闭类的静态字段getNumber()保持其初始值0。

但是你去了

x

当然,编写更合理的代码的第一步:决定是否要拥有该类的所有方法都可以使用的“全局”字段,如果不想这样做,请那。

意思是:您使用该字段,然后您的方法仅更新public static void printNumber(){ x = getNumer(); System.out.println(x); } ,而另一种方法将其打印出来。 或者,您的类没有该字段,并且您的两个方法通过x返回一个值,然后打印那个返回的结果来工作。

答案 2 :(得分:0)

您能否首先解释一下此代码要做什么?

让我们看一下您的代码:

我忽略了printNumber()方法,因为它只是System.out.println方法的包装,我们可以在代码中直接使用它。

方法getNumber()可以接收一些参数,例如getNumber(int a)。经过这样的改进,我们将能够从主方法中调用getNumber并将其传递给在主方法中定义的变量。比getNumber可以执行一些操作,例如a * a并返回此结果。

java程序的主要方法也必须如下所示。

public static void main(String[] args) {
  int x = 5;
  int resultOfGetNumber = getNumber(x);
  System.out.println(resultOfGetNumber);
}

public static int getNumber(int a){
  return(a * a);
}

因此,我们在main方法中定义了变量x并将其传递给getNumber方法,该方法返回接收到的变量的平方。然后在主方法中,将getNumber方法的结果关联到int变量resultOfGetNumber。然后,将resultOfGetNumber传递给System.out.println方法,该方法会将此变量输出到控制台。