这里的 goto 语句来自例如 c++的 r 等价物是什么?

问题描述

我意识到 r 没有 goto 语句,我目前正在翻译一些包含它们的 C++ 代码。在以下代码中,goto 循环应该使函数返回到“loop:”并从那里开始运行代码。你怎么能在 r 中获得类似的结果?

Solve <- function() 
{
  statements
  loop:
    iter_time <- iter_time + 1
  if (conditions) {
    statements
  } else if (conditions) {
    statements
    if(conditions) {
      statements
      if (conditions) {
        statements
      } else {
        statements
      }
    } else {
      goto loop
    }
  }
}

解决方法

您可以使用 next 返回到循环的开头。例如:

for (i in 1:5) {
        if (i == 2) {
                print(paste0(i," is a cool number!"))
        }
        else if (i == 3) {
                print(paste0(i," is an awesome number!"))
        }
        else {
                next
        }
}

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...