Как получить один элемент из цикла for в Scala?

Очень похоже на этот вопрос:

Функциональный код для зацикливания с ранним выходом

Скажи код

def findFirst[T](objects: List[T]):T = {
  for (obj <- objects) {
    if (expensiveFunc(obj) != null) return /*???*/ Some(obj)
  }
  None
}

Как получить один элемент из цикла for, как это в Scala?

Я не хочу использовать find, как предложено в исходном вопросе, мне интересно, если и как это может быть реализовано с помощью цикла for.

* ОБНОВИТЬ *

Во-первых, спасибо за все комментарии, но я думаю, что я не был ясен в вопросе. Я снимаю что-то вроде этого:

val seven = for {
    x <- 1 to 10
    if x == 7
} return x

И это не компилируется. Две ошибки: - возврат за пределы определения метода - метод main имеет оператор return; нужен тип результата

Я знаю, что find () будет лучше в этом случае, я просто изучаю и изучаю язык. И в более сложном случае с несколькими итераторами, я думаю, что поиск с for может быть действительно полезным.

Спасибо, комментаторы, я начну вознаграждение, чтобы восполнить плохую постановку вопроса :)

Ответы на вопрос(2)

Ваш ответ на вопрос