【问题标题】:return after if statementif 语句后返回
【发布时间】:2018-05-07 18:15:10
【问题描述】:

我在以前从未见过的 new 中看到了一个带有 return 的 if 语句,想问一下它的作用。

//class variable
private boolean isRunning = false;


public synchronized void start()
{
if(isRunning)return;
isRunning = true;
}

这段代码在做什么?

【问题讨论】:

  • 你在调试器中单步执行了吗?多次调用它。
  • 刚在一个视频里看到,视频里的小伙解释了一下,我没听懂
  • @Aominè 嗯,好的,谢谢,我明白了。

标签: java if-statement return


【解决方案1】:

需要复习基础知识。

return 关键字用于在方法执行完成时从方法返回。当在方法中到达 return 语句时,程序将返回到调用它的代码。

在您的示例中,如果条件 isRunning 为真,则该方法将在该点返回。当 start() 第一次被调用时,isRunning 为假,所以 if 条件为假,继续执行。

你可以用同样的行为重写你的例子:

public synchronized void start()
{ 
 if(!isRunning) {
     isRunning = true;
 } // else already running
}

【讨论】:

    猜你喜欢
    • 2021-08-31
    • 2016-07-23
    • 2015-07-28
    • 2022-01-03
    • 2018-04-18
    • 2020-09-12
    • 2017-07-27
    • 2016-02-12
    相关资源
    最近更新 更多