返回值是什么意思?

我对编程很新,而且我对于返回一个值的确切含义感到困惑。 起初,我认为这意味着要输出返回的值,但是当我在自己的代码中尝试时,没有任何反应。

class Class1 { public static int x = 3; public static int getX(){ return x; } public static void main(String[] args){ Class1.getX(); } } 

这是我的意思的一个例子。 当我运行程序时,没有任何显示。 考虑到这一点,我被引导相信返回一个值意味着别的东西。 但是什么?

简单来说,它意味着将值返回给方法的调用者……

因此,在您的示例中,方法getX会将x的值返回给调用者,允许他们访问它。

 class Class1{ static int x = 3; public static int getX(){ return x; } public static void main(String args[]){ int myX = Class1.getX(); // return the value to the caller... System.out.println(myX); // print the result to the console... } } 

返回值是方法相互通信的一种方式

 public void method1() { int value = 5 + method2(5); System.out.println(value); } public int method2(int param) { return param + 5; } 

这将打印15(5将被发送到method2 ,它将5添加到它并将结果返回到method1 ,它向它添加5并打印结果)。

Java返回值的副本 – 在这种情况下,它复制值10并将其返回到method1 。 如果method2返回一个Object那么它将返回该对象引用的副本。 不同的语言对于方法返回具有不同的语义,因此在语言之间切换时要小心。 Java还复制传递给方法的参数值 – 在这种情况下, method1复制值5并将其传递给method2

 public void method1() { int value = 5; method2(value); } public void method2(int param) { param = param + 5; } 

method1value不受method2影响(在执行method2之后value仍等于5),因为只有一个value的副本作为参数发送。

您只是调用一个返回整数的方法,但您永远不会使用/打印它。 尝试在代码中使用它,看看你是否已经获得了在课堂上设置的所需值。