【问题标题】:what will happen if i didnt assign a variable to a function that returns a value如果我没有将变量分配给返回值的函数会发生什么
【发布时间】:2018-06-06 10:57:13
【问题描述】:

让我们考虑一下代码

int function(){
    return 1;
}
main(){
    function();
}

我没有为返回整数的函数调用分配任何变量。它没有引发错误。内部实际发生了什么?

【问题讨论】:

    标签: java syntax


    【解决方案1】:

    值在栈上返回,出栈,值被丢弃。这是完全正常的,经常发生。我们经常调用返回不需要使用的东西的函数,因此不要使用。

    【讨论】:

      【解决方案2】:

      内部实际发生了什么?

      返回值被简单地丢弃。

      正常情况下

      x = foo();
      

      调用函数中的代码在函数调用之后执行,当它返回时将返回值移动到变量x。如果您这样做,则此代码将被省略

      foo();
      

      【讨论】:

        【解决方案3】:

        实际上,您的方法返回一个整数值,但您没有将它分配给任何变量来存储它。如果你把它打印出来,它就会打印出来。

        System.out.println(function());
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2019-10-29
          • 2023-01-04
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-02-03
          • 2021-11-13
          相关资源
          最近更新 更多