Вызов анонимной / лямбда-функции в результате для метода get () свойства - PullRequest
0 голосов
/ 20 марта 2019

Предполагая, что у нас есть класс «Test» со свойством «testProperty», который реализует метод get (), мы можем легко присвоить методу get () результат вспомогательного метода:

class Test {
    val testProperty: Int
        get() = testFun()

    private fun testFun() : Int {
        // Some fun with numbers
        return result
    }
}

Поскольку этот метод создается только для способа возврата результата в методе get (), существует ли способ сделать его анонимным, как показано ниже?

get() = {() -> 
        // Some fun with numbers
        result
    }()

1 Ответ

1 голос
/ 20 марта 2019

Да, get() - это функция с подразумеваемым типом возврата, поэтому вы можете просто вставить остальную часть кода по мере необходимости.Например:

class Test {
  val testProperty: Int
    get() {
      // some fun with numbers
      return result
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...