【问题标题】:Modified method with new condition新条件下的修改方法
【发布时间】:2017-10-13 22:03:31
【问题描述】:

我有下一个方法:

fun getTimeFromLastPinInput(): Long {
    return DateTime.now().millis - PreferenceRepository.getLastPinInputTime()
}

我想添加下一个条件:

if (DateTime.now().millis >= PreferenceRepository.getLastPinInputTime())

如何正确修改我的方法?

【问题讨论】:

  • 你想达到什么目的?函数是否应该仅在条件为真时返回它所做的事情?如果是这样,否则会发生什么?
  • @hotkey 说实话这个问题我觉得很难回答,主要是加这个条件。

标签: android methods kotlin


【解决方案1】:

如果想法是当条件为假时结果没有意义,那么您可以将函数转换为返回nullable value (Long?),在这种情况下返回null:

fun getTimeFromLastPinInput(): Long? {
    val now = DateTime.now().millis
    val lastPinInputTime = PreferenceRepository.getLastPinInputTime()
    return if (now >= lastPinInputTime) now - lastPinInputTime else null
}

【讨论】:

  • 或者你可以在方法外简单检查值是否为负,不需要额外的代码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-10-04
  • 2014-09-29
相关资源
最近更新 更多